image: alpine:latest # Use latest version of Alpine Linux docker image before_script: # Install dependencies - 'which ssh-agent || ( apk update && apk add openssh-client git)' # Run ssh-agent - eval $(ssh-agent -s) # Import private key with ed25519 workaround - echo "$SSH_PRIVATE_KEY" | tr -d '\r' | ssh-add - > /dev/null # Create the SSH directory and give it the right permissions - mkdir -p ~/.ssh - chmod 700 ~/.ssh # Add gitlab.com as ssh known host - ssh-keyscan gitlab.com >> ~/.ssh/known_hosts - chmod 644 ~/.ssh/known_hosts # Set commit author - git config --global user.name "curben-bot" - git config --global user.email "curben-bot@users.noreply.gitlab.com" deploy: script: # SSH to gitlab.com - ssh git@gitlab.com # Shallow cloning for faster cloning - git clone --depth 3 git@gitlab.com:curben/urlhaus-filter.git build # Change to the downloaded repo directory - cd build/ # Give execute permission to scripts - cd utils/ - chmod 700 umbrella-top-1m.sh script.sh commit.sh # Download Umbrella Popularity List - ./umbrella-top-1m.sh # Download database dump and process it - ./script.sh # Commit the changes - ./commit.sh # Push the commit - cd ../ - git push only: # Allow CI to be triggered by schedule - schedules # Allow CI to be triggered manually - web