setup-gcloud/.github/workflows/appengine-deploy-it.yml
averikitsch d153f05d28 Add appengine-deploy action and refactor setup-gcloud
initial

Add test app and tests

add license

Update ReadMe and runner

Fix lint errors

Missed fixes

Update tests to run integration on PR

rename pkg -> setupGloudSDK

Update ts congig

Remove project id requirement

Update gcloud set project id func

Add unit tests for pkg

Add set project to action

rebuild

Fix gcloud typo

lint pkg and update project id dependency

Update tmp JSON writer

Add cleanup to integration tests

Update get input validation

fix json string

Fix test order and version name

add project id to test

remove clean up step

Update project url

Add no promote flag

test stderr vs stdout

Update pkg build

refactor setup-gcloud

clean up

Fix tool command for isAuthenticated

debugging

test command

Fix isInstalled method

Clean up
2020-04-12 16:23:05 -07:00

60 lines
1.7 KiB
YAML

name: appengine-deploy Integration
on: [push, pull_request]
jobs:
gcloud:
name: with setup-gcloud
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- uses: ./setup-gcloud
with:
service_account_key: ${{ secrets.APPENGINE_DEPLOY_SA_KEY_JSON }}
- id: deploy
name: Deploy to App Engine
uses: ./appengine-deploy
with:
project_id: ${{ secrets.APPENGINE_DEPLOY_PROJECT_ID }}
deliverables: ./appengine-deploy/test/app.yaml
version: gcloud
- name: Test Output
run: curl '${{ steps.deploy.outputs.url }}'
b64_json:
needs: gcloud
name: with base64 json creds
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- id: deploy
name: Deploy to App Engine
uses: ./appengine-deploy
with:
credentials: ${{ secrets.APPENGINE_DEPLOY_SA_KEY_B64 }}
deliverables: ./appengine-deploy/test/app.yaml
version: b64-json
promote: false # Allows for deletion
- name: Test Output
run: curl '${{ steps.deploy.outputs.url }}'
- name: Clean Up
run: |
gcloud app versions delete b64-json --quiet
json:
needs: [gcloud, b64_json]
name: with json creds
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- id: deploy
name: Deploy to App Engine
uses: ./appengine-deploy
with:
credentials: ${{ secrets.APPENGINE_DEPLOY_SA_KEY_JSON }}
deliverables: ./appengine-deploy/test/app.yaml
version: json
promote: false # Allows for deletion
- name: Test Output
run: curl '${{ steps.deploy.outputs.url }}'
- name: Clean Up
run: |
gcloud app versions delete json --quiet