image: ubuntu/focal secrets: - 31c0c342-c396-4190-9637-1c3cedd705a5 # SSH key - 4e6bb736-559c-4b3e-ba04-331f5808cacc # aptrepo SSH key (to upload the build result to apt.playfulpachyderm.com) - 8803f94a-8b8b-4966-aac7-4b8e24c328ce # Gitlab access token - c84e3f2c-7c97-4cef-859e-8b13de32a7be # ~/.ssh/known_hosts (gitlab.com) sources: - git@gitlab.com:playfulpachyderm/twitter_offline_engine.git packages: - wget - build-essential - sqlite3 tasks: - install_go: | SECONDS=0 wget https://golang.org/dl/go1.16.4.linux-amd64.tar.gz sudo tar -C /usr/local -xzf go1.16.4.linux-amd64.tar.gz sudo ln -s /usr/local/go/bin/go /usr/bin/go duration=$SECONDS echo "Task completed in $(($duration / 60))m$(($duration % 60))s." - test_terminal_utils: | cd twitter_offline_engine/terminal_utils go get . go test -bench=. -cover - test_scraper: | cd twitter_offline_engine/scraper go get . go test -bench=. -cover - test_persistence: | cd twitter_offline_engine/persistence go get . mkdir test_profiles/ go test -bench=. -cover - install_golangci-lint: | SECONDS=0 curl -sSfL https://raw.githubusercontent.com/golangci/golangci-lint/master/install.sh | sudo sh -s -- -b /usr/local/go/bin v1.40.1 sudo ln /usr/local/go/bin/golangci-lint /usr/bin/golangci-lint duration=$SECONDS echo "Task completed in $(($duration / 60))m$(($duration % 60))s." - lint: | SECONDS=0 cd twitter_offline_engine golangci-lint run duration=$SECONDS echo "Task completed in $(($duration / 60))m$(($duration % 60))s." - integration_test: | SECONDS=0 cd twitter_offline_engine/cmd ./tests.sh duration=$SECONDS echo "Task completed in $(($duration / 60))m$(($duration % 60))s." - dpkg_build: | version=$(git rev-parse --abbrev HEAD | grep -Poh "(?<=release-)\d+\.\d+\.\d+") if [[ -z "$version" ]] then # Not on a release branch; just exit this task exit fi SECONDS=0 cd twitter_offline_engine/build ./build_dpkg.sh $version duration=$SECONDS echo "Task completed in $(($duration / 60))m$(($duration % 60))s." - upload_dpkg: | # Just fail test -z "fjkjksdf" # SECONDS=0 # cd twitter_offline_engine/build # scp offline