Update action.yml #118
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
--- | |
name: Testing | |
on: | |
push: | |
branches: | |
- main | |
pull_request: | |
branches: | |
- main | |
env: | |
TEST_DEPLOY_SHA: main | |
BRANCH: main | |
jobs: | |
action-image-testing: | |
name: Action Image Testing | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
matrix: | |
promotion: [simple-promotion, complex-promotion, cross-overlay-promotion] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Read in examples to github output | |
id: read-examples | |
shell: bash | |
run: |- | |
# Generate unique EOF value to prevent injection attack | |
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64) | |
echo "PROMOTION<<$EOF" >> $GITHUB_ENV | |
cat example/${{ matrix.promotion }}.json >> $GITHUB_ENV | |
echo "$EOF" >> $GITHUB_ENV | |
- name: Checkout Testing Repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
repository: kustomize-everything/test-deploy | |
ref: ${{ env.TEST_DEPLOY_SHA }} | |
path: test-deploy | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Action Test with ${{ matrix.promotion }} | |
uses: ./ | |
with: | |
target-repo: kustomize-everything/test-deploy | |
target-branch: ${{ env.BRANCH }} | |
working-directory: test-deploy | |
images: ${{ env.PROMOTION }} | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
dry-run: true | |
# Useful for debugging the action | |
# debug: true | |
action-helm-testing: | |
name: Action Helm Testing | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
matrix: | |
promotion: [helm-promotion, helm-cross-overlay-promotion] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Read in examples to github output | |
id: read-examples | |
shell: bash | |
run: |- | |
# Generate unique EOF value to prevent injection attack | |
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64) | |
echo "PROMOTION<<$EOF" >> $GITHUB_ENV | |
cat example/${{ matrix.promotion }}.json >> $GITHUB_ENV | |
echo "$EOF" >> $GITHUB_ENV | |
- name: Checkout Testing Repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
repository: kustomize-everything/test-deploy | |
ref: ${{ env.TEST_DEPLOY_SHA }} | |
path: test-deploy | |
token: ${{ secrets.GITHUB_TOKEN }} | |
- name: Action Test with ${{ matrix.promotion }} | |
uses: ./ | |
with: | |
target-repo: kustomize-everything/test-deploy | |
target-branch: ${{ env.BRANCH }} | |
working-directory: test-deploy | |
charts: ${{ env.PROMOTION }} | |
github-token: ${{ secrets.GITHUB_TOKEN }} | |
dry-run: true | |
# Useful for debugging the action | |
# debug: true | |
action-open-pr-testing: | |
name: Action Open PR Testing | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
matrix: | |
promotion: [simple-promotion, complex-promotion] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Read in examples to github output | |
id: read-examples | |
shell: bash | |
run: |- | |
# Generate unique EOF value to prevent injection attack | |
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64) | |
echo "PROMOTION<<$EOF" >> $GITHUB_ENV | |
cat example/${{ matrix.promotion }}.json >> $GITHUB_ENV | |
echo "$EOF" >> $GITHUB_ENV | |
- name: Checkout Testing Repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
repository: kustomize-everything/test-deploy | |
ref: ${{ env.TEST_DEPLOY_SHA }} | |
path: test-deploy | |
token: ${{ secrets.PUSHER_ROBOT_GITHUB_TOKEN }} | |
- name: Action Test with ${{ matrix.promotion }} | |
uses: ./ | |
with: | |
target-repo: kustomize-everything/test-deploy | |
target-branch: ${{ env.BRANCH }} | |
working-directory: test-deploy | |
images: ${{ env.PROMOTION }} | |
github-token: ${{ secrets.PUSHER_ROBOT_GITHUB_TOKEN }} | |
promotion-method: pull_request | |
dry-run: false | |
auto-merge: false | |
# Useful for debugging the action | |
# debug: true | |
action-open-pr-reuse-testing: | |
name: Action Open PR with Reuse Testing | |
runs-on: ubuntu-latest | |
strategy: | |
fail-fast: true | |
matrix: | |
promotion: [simple-promotion, complex-promotion] | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Read in examples to github output | |
id: read-examples | |
shell: bash | |
run: |- | |
# Generate unique EOF value to prevent injection attack | |
EOF=$(dd if=/dev/urandom bs=15 count=1 status=none | base64) | |
echo "PROMOTION<<$EOF" >> $GITHUB_ENV | |
cat example/${{ matrix.promotion }}.json >> $GITHUB_ENV | |
echo "$EOF" >> $GITHUB_ENV | |
# This relies on the first promotion in the configuration for the matrix | |
# being an image promotion. | |
echo "PROMOTION_2<<$EOF" >> $GITHUB_ENV | |
jq '.[0].newTag = "2.2.2"' example/${{ matrix.promotion }}.json >> $GITHUB_ENV | |
echo "$EOF" >> $GITHUB_ENV | |
- name: Checkout Testing Repo | |
uses: actions/checkout@v3 | |
with: | |
fetch-depth: 0 | |
repository: kustomize-everything/test-deploy | |
ref: ${{ env.TEST_DEPLOY_SHA }} | |
path: test-deploy | |
token: ${{ secrets.PUSHER_ROBOT_GITHUB_TOKEN }} | |
- name: Action Test with ${{ matrix.promotion }} | |
uses: ./ | |
with: | |
target-repo: kustomize-everything/test-deploy | |
target-branch: ${{ env.BRANCH }} | |
working-directory: test-deploy | |
images: ${{ env.PROMOTION }} | |
github-token: ${{ secrets.PUSHER_ROBOT_GITHUB_TOKEN }} | |
promotion-method: pull_request | |
dry-run: false | |
auto-merge: false | |
aggregate-pr-changes: true | |
pr-unique-key: gha-testing-${{ env.BRANCH }} | |
# Useful for debugging the action | |
# debug: true | |
- name: Action Test with ${{ matrix.promotion }} (reuse previous PR) | |
uses: ./ | |
with: | |
target-repo: kustomize-everything/test-deploy | |
target-branch: ${{ env.BRANCH }} | |
working-directory: test-deploy | |
images: ${{ env.PROMOTION_2 }} | |
github-token: ${{ secrets.PUSHER_ROBOT_GITHUB_TOKEN }} | |
promotion-method: pull_request | |
dry-run: false | |
auto-merge: false | |
aggregate-pr-changes: true | |
pr-unique-key: gha-testing-${{ env.BRANCH }} | |
python-tests: | |
name: Python Tests | |
runs-on: ubuntu-latest | |
steps: | |
- name: Checkout Repo | |
uses: actions/checkout@v3 | |
- name: Setup Python | |
uses: actions/setup-python@v4 | |
with: | |
python-version: 3.9 | |
- name: Install Dependencies | |
working-directory: src | |
run: |- | |
pip install -r requirements.txt | |
poetry install | |
- name: Run Tests | |
working-directory: src | |
run: |- | |
poetry run python -m unittest tests/*_test.py |