travis-ci/gcloud-cleanup:.travis.yml@cb1433f
language: bash
dist: focal
group: edge
env:
global:
- TRAVIS_COMMIT_SHORT="$(echo $TRAVIS_COMMIT | cut -b1-7)"
- TRAVIS_COMMIT_LESSSHORT="$(echo $TRAVIS_COMMIT | cut -b1-9)"
- CLOUDSDK_CORE_DISABLE_PROMPTS=1
jobs:
include:
- stage: test
name: linux
before_script:
- eval "$(gimme 1.11.4)"
script:
- make copyright
- git diff --exit-code
- git diff --cached --exit-code
- make
addons:
artifacts:
paths:
- "./build/linux/amd64/gcloud-cleanup"
- "./build/darwin/amd64/gcloud-cleanup"
- "./build.tar.gz"
target_paths:
- travis-ci/gcloud-cleanup/$TRAVIS_BRANCH
- travis-ci/gcloud-cleanup/$TRAVIS_COMMIT
- travis-ci/gcloud-cleanup/$TRAVIS_COMMIT_SHORT
- travis-ci/gcloud-cleanup/$TRAVIS_COMMIT_LESSSHORT
after_success:
- bash <(curl -s https://codecov.io/bash)
- tar -czvf build.tar.gz build Procfile Makefile
- name: docker
if: type != 'pull_request'
script:
- vault login -method=userpass username=$VAULT_USERNAME password=$VAULT_PASS
- vault kv get -field=secret gcp/gcr-sa-key > /tmp/gcr_key.json;
- gcloud -q auth activate-service-account --key-file /tmp/gcr_key.json;
- gcloud -q config set project ${GCE_PROJECT}
- gcloud auth configure-docker
- export DOCKER_IMAGE_REPO=gcr.io/travis-ci-prod-services-1/gcloud-cleanup
- export VERSION_VALUE=$(git describe --always --dirty --tags 2>/dev/null)
- export DOCKER_DEST=$DOCKER_IMAGE_REPO:$VERSION_VALUE
- docker build -t $DOCKER_DEST .
- docker run --rm -it $DOCKER_DEST gcloud-cleanup --help
- script/docker-push $DOCKER_DEST
services:
- docker
addons:
snaps:
- google-cloud-sdk
- vault
Build Config
{
"language": "shell",
"os": [
"linux"
],
"dist": "focal",
"group": "edge",
"env": {
"global": [
{
"TRAVIS_COMMIT_SHORT": "\"$(echo $TRAVIS_COMMIT | cut -b1-7)\""
},
{
"TRAVIS_COMMIT_LESSSHORT": "\"$(echo $TRAVIS_COMMIT | cut -b1-9)\""
},
{
"CLOUDSDK_CORE_DISABLE_PROMPTS": "1"
}
]
},
"jobs": {
"include": [
{
"stage": "test",
"name": "linux",
"before_script": [
"eval \"$(gimme 1.11.4)\""
],
"script": [
"make copyright",
"git diff --exit-code",
"git diff --cached --exit-code",
"make"
],
"addons": {
"artifacts": {
"paths": [
"./build/linux/amd64/gcloud-cleanup",
"./build/darwin/amd64/gcloud-cleanup",
"./build.tar.gz"
],
"target_paths": [
"travis-ci/gcloud-cleanup/$TRAVIS_BRANCH",
"travis-ci/gcloud-cleanup/$TRAVIS_COMMIT",
"travis-ci/gcloud-cleanup/$TRAVIS_COMMIT_SHORT",
"travis-ci/gcloud-cleanup/$TRAVIS_COMMIT_LESSSHORT"
]
}
},
"after_success": [
"bash <(curl -s https://codecov.io/bash)",
"tar -czvf build.tar.gz build Procfile Makefile"
]
},
{
"name": "docker",
"if": "type != 'pull_request'",
"script": [
"vault login -method=userpass username=$VAULT_USERNAME password=$VAULT_PASS",
"vault kv get -field=secret gcp/gcr-sa-key > /tmp/gcr_key.json;",
"gcloud -q auth activate-service-account --key-file /tmp/gcr_key.json;",
"gcloud -q config set project ${GCE_PROJECT}",
"gcloud auth configure-docker",
"export DOCKER_IMAGE_REPO=gcr.io/travis-ci-prod-services-1/gcloud-cleanup",
"export VERSION_VALUE=$(git describe --always --dirty --tags 2>/dev/null)",
"export DOCKER_DEST=$DOCKER_IMAGE_REPO:$VERSION_VALUE",
"docker build -t $DOCKER_DEST .",
"docker run --rm -it $DOCKER_DEST gcloud-cleanup --help",
"script/docker-push $DOCKER_DEST"
],
"services": [
"docker"
],
"addons": {
"snaps": [
{
"name": "google-cloud-sdk"
},
{
"name": "vault"
}
]
}
}
]
}
}