actions: separate actions files for ci and release

This commit is contained in:
Jens Langhammer 2020-01-02 10:22:03 +01:00
parent 9d7ed9a0ed
commit 2b8c70a61f
3 changed files with 67 additions and 69 deletions

View File

@ -10,7 +10,7 @@ tag_name = version/{new_version}
[bumpversion:part:release]
optional_value = stable
first_value = beta
values =
values =
alpha
beta
stable
@ -19,7 +19,7 @@ values =
[bumpversion:file:helm/Chart.yaml]
[bumpversion:file:.github/workflows/ci.yml]
[bumpversion:file:.github/workflows/release.yml]
[bumpversion:file:passbook/__init__.py]

View File

@ -1,7 +1,6 @@
name: passbook | CI
name: passbook-ci
on:
- push
- release
env:
POSTGRES_DB: passbook
POSTGRES_USER: passbook
@ -129,68 +128,3 @@ jobs:
run: pip install -U pip pipenv && pipenv install --dev
- name: Run coverage
run: pipenv run ./scripts/coverage.sh
# Build
build-server:
needs:
- migrations
- coverage
if: github.event.action == 'release'
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v1
- name: Docker Login Registry
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
- name: Building Docker Image
run: docker build --no-cache -t beryju/passbook:0.7.7-beta -f Dockerfile .
- name: Push Docker Container to Registry
run: docker push beryju/passbook:0.7.7-beta
build-static:
needs:
- migrations
- coverage
if: github.event.action == 'release'
runs-on: [ubuntu-latest]
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: passbook
POSTGRES_USER: passbook
POSTGRES_PASSWORD: "EK-5jnKfjrGRm<77"
redis:
image: redis:latest
steps:
- uses: actions/checkout@v1
- name: Docker Login Registry
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
- name: Building Docker Image
run: docker build
--no-cache
--network=$(docker network ls | grep github | awk '{print $1}')
-t beryju/passbook-static:0.7.7-beta
-f static.Dockerfile .
- name: Push Docker Container to Registry
run: docker push beryju/passbook-static:0.7.7-beta
package-helm:
needs:
- build-server
- build-static
if: github.event.action == 'release'
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v1
- name: Install Helm
run: |
apt update && apt install -y curl
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
helm init
- name: Helm package
run: |
helm dependency update helm/
helm package helm/

64
.github/workflows/release.yml vendored Normal file
View File

@ -0,0 +1,64 @@
name: passbook-release
on:
release:
types: # This configuration does not affect the page_build event above
- created
jobs:
# Build
build-server:
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v1
- name: Docker Login Registry
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
- name: Building Docker Image
run: docker build --no-cache -t beryju/passbook:0.7.7-beta -f Dockerfile .
- name: Push Docker Container to Registry
run: docker push beryju/passbook:0.7.7-beta
build-static:
runs-on: [ubuntu-latest]
services:
postgres:
image: postgres:latest
env:
POSTGRES_DB: passbook
POSTGRES_USER: passbook
POSTGRES_PASSWORD: "EK-5jnKfjrGRm<77"
redis:
image: redis:latest
steps:
- uses: actions/checkout@v1
- name: Docker Login Registry
env:
DOCKER_PASSWORD: ${{ secrets.DOCKER_PASSWORD }}
DOCKER_USERNAME: ${{ secrets.DOCKER_USERNAME }}
run: docker login -u $DOCKER_USERNAME -p $DOCKER_PASSWORD
- name: Building Docker Image
run: docker build
--no-cache
--network=$(docker network ls | grep github | awk '{print $1}')
-t beryju/passbook-static:0.7.7-beta
-f static.Dockerfile .
- name: Push Docker Container to Registry
run: docker push beryju/passbook-static:0.7.7-beta
package-helm:
needs:
- build-server
- build-static
runs-on: [ubuntu-latest]
steps:
- uses: actions/checkout@v1
- name: Install Helm
run: |
apt update && apt install -y curl
curl https://raw.githubusercontent.com/helm/helm/master/scripts/get-helm-3 | bash
helm init
- name: Helm package
run: |
helm dependency update helm/passbook
helm package helm/passbook