master Merge pull request #56 from travis-ci/gcr-image

Push event #374 passed

  • Ran for
  • Total time
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"
            }
          ]
        }
      }
    ]
  }
}