mirror of
https://github.com/yannh/kubeconform.git
synced 2026-02-11 14:09:21 +00:00
95 lines
No EOL
2.1 KiB
YAML
95 lines
No EOL
2.1 KiB
YAML
name: ci
|
|
on: push
|
|
jobs:
|
|
test:
|
|
runs-on: ubuntu-latest
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: test
|
|
run: make docker-test
|
|
|
|
- name: build
|
|
run: make docker-build-static
|
|
|
|
- name: acceptance-test
|
|
run: make docker-acceptance
|
|
|
|
- name: build-image
|
|
run: make docker-image
|
|
|
|
- name: save image
|
|
run: make save-image
|
|
|
|
- name: archive image
|
|
uses: actions/upload-artifact@v2
|
|
with:
|
|
name: kubeconform-image
|
|
path: kubeconform-image.tar
|
|
|
|
publish-image-master:
|
|
runs-on: ubuntu-latest
|
|
if: github.ref == 'refs/heads/master'
|
|
needs: test
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Download kubeconform image
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
name: kubeconform-image
|
|
|
|
- name: load image
|
|
run: docker load < kubeconform-image.tar
|
|
|
|
- name: push
|
|
run: |
|
|
echo "${{ github.token }}" | docker login https://ghcr.io -u ${GITHUB_ACTOR} --password-stdin
|
|
make push-image
|
|
env:
|
|
RELEASE_VERSION: master
|
|
|
|
publish-image-release:
|
|
runs-on: ubuntu-latest
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
needs: test
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: Download kubeconform image
|
|
uses: actions/download-artifact@v2
|
|
with:
|
|
name: kubeconform-image
|
|
|
|
- name: load image
|
|
run: docker load < kubeconform-image.tar
|
|
|
|
- name: Set env
|
|
run: echo "RELEASE_VERSION=${GITHUB_REF#refs/*/}" >> $GITHUB_ENV
|
|
|
|
- name: push-tag
|
|
run: |
|
|
echo "${{ github.token }}" | docker login https://ghcr.io -u ${GITHUB_ACTOR} --password-stdin
|
|
make push-image
|
|
|
|
- name: push-latest
|
|
run: |
|
|
make push-image
|
|
env:
|
|
RELEASE_VERSION: latest
|
|
|
|
goreleaser:
|
|
runs-on: ubuntu-latest
|
|
needs: test
|
|
if: startsWith(github.ref, 'refs/tags/v')
|
|
steps:
|
|
- name: checkout
|
|
uses: actions/checkout@v2
|
|
|
|
- name: goreleaser
|
|
run: make release
|
|
env:
|
|
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} |