Skip to content

Commit

Permalink
Merge 3d1cbde into 2be2178
Browse files Browse the repository at this point in the history
  • Loading branch information
yuleib committed May 11, 2023
2 parents 2be2178 + 3d1cbde commit 9f48bc7
Show file tree
Hide file tree
Showing 4 changed files with 112 additions and 30 deletions.
2 changes: 1 addition & 1 deletion .github/workflows/go-basic-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -118,7 +118,7 @@ jobs:
runs-on: ubuntu-latest
needs: [Check-secret, Environment-Test]
steps:
- uses: actions/checkout@v2
- uses: actions/checkout@v3

- uses: actions/setup-go@v3
name: Setup Go
Expand Down
13 changes: 12 additions & 1 deletion .github/workflows/kubescape-cli-e2e-tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -55,7 +55,18 @@ jobs:
SECRET_KEY: ${{ secrets.SECRET_KEY_PROD }}
REGISTRY_USERNAME: ${{ secrets.REGISTRY_USERNAME }}
REGISTRY_PASSWORD: ${{ secrets.REGISTRY_PASSWORD }}
run: "echo \"is-secret-set=${{ env.CUSTOMER != '' && \n env.USERNAME != '' &&\n env.PASSWORD != '' &&\n env.CLIENT_ID != '' &&\n env.SECRET_KEY != '' &&\n env.REGISTRY_USERNAME != '' &&\n env.REGISTRY_PASSWORD != ''\n }}\" >> $GITHUB_OUTPUT\n"
run: |
env_vars=("CUSTOMER" "USERNAME" "PASSWORD" "CLIENT_ID" "SECRET_KEY" "REGISTRY_USERNAME" "REGISTRY_PASSWORD")
for var_name in "${env_vars[@]}"; do
var_value="${!var_name}"
if [[ -z "${var_value// /}" ]]; then
echo "Environment variable '$var_name' is empty, null, or contains only whitespace. Failing the workflow."
exit 1
fi
done
echo "All environment variables are valid. Proceeding with the workflow."
- id: export_tests_to_env
name: set test name
Expand Down
110 changes: 95 additions & 15 deletions .github/workflows/package-release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,11 +31,13 @@ on:
# required: false
# type: boolean
# default: true
push:
branches: [ main, master ]
tags:
- 'v*.*.*'

jobs:
test:
permissions:
pull-requests: write
uses: ./.github/workflows/go-basic-tests.yaml
with:
GO_VERSION: ${{ inputs.GO_VERSION }}
Expand All @@ -46,20 +48,98 @@ jobs:
# TEST_MULTI_ENVIRONMENTS: ${{ inputs.TEST_MULTI_ENVIRONMENTS }}
secrets: inherit

release:
create_release:
needs: test
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}

runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Checkout code
uses: actions/checkout@v3
with:
fetch-depth: 0

- name: Get latest tag
id: get_latest_tag
run: |
latest_tag=$(git describe --tags $(git rev-list --tags --max-count=1))
echo "Latest tag: $latest_tag"
- name: Determine version bump
id: version_bump
run: |
tag=${{ steps.latest_tag.outputs.latest_tag }}
commit_range="${tag}..HEAD"
major_bump=$(git diff --name-only $commit_range | grep -E '^major-.*\.md$' | wc -l)
minor_bump=$(git diff --name-only $commit_range | grep -E '^minor-.*\.md$' | wc -l)
if [ $major_bump -gt 0 ]; then
echo "{name}={$bump_type} major" >> $GITHUB_OUTPUT
elif [ $minor_bump -gt 0 ]; then
echo "{name}={$bump_type} minor" >> $GITHUB_OUTPUT
else
echo "{name}={$bump_type} patch" >> $GITHUB_OUTPUT
fi
- name: Increment tag version
id: increment_tag
run: |
tag=${{ steps.latest_tag.outputs.latest_tag }}
bump_type=${{ steps.version_bump.outputs.bump_type }}
if [ $bump_type == "major" ]; then
tag=$(echo $tag | awk -F. '{$1++;$2=0;$3=0;print $0}')
elif [ $bump_type == "minor" ]; then
tag=$(echo $tag | awk -F. '{$2++;$3=0;print $0}')
else
tag=$(echo $tag | awk -F. '{$3++;print $0}')
fi
echo "{name}={$tag}" >> $GITHUB_OUTPUT
# - name: Extract version
# id: extract_version
# run: |
# version=$(echo $latest_tag | jq -r 'sub("^[^0-9]*"; "")')
# echo "Version: $version"

# - name: Increase version
# id: increase_version
# run: |
# next_version=$((version + 1))
# echo "Next version: $next_version"

# - name: Set tag name
# id: set_tag_name
# run: |
# next_version=$((${{ github.event_name == 'release' }} ? $(echo "${{ github.ref }}" | awk -F'/' '{print $3}') : $(echo "${{ github.ref }}-$(date +%s)" | awk -F'/' '{print $3}')))
# tag_name=v$(echo "$next_version" | cut -d'.' -f-3)
# echo "{name}={$tag_name}" >> $GITHUB_OUTPUT
# continue-on-error: true

# - name: Set tag name
# id: set_tag_name
# run: |
# # Get the latest tag name in the repository
# last_tag=$(git describe --tags --abbrev=0)
# # Extract the major, minor, and patch version numbers from the latest tag
# major=$(echo "$last_tag" | cut -d'.' -f1 | sed 's/v//')
# minor=$(echo "$last_tag" | cut -d'.' -f2)
# patch=$(echo "$last_tag" | cut -d'.' -f3)
# # Increment the patch version number
# next_patch=$(($patch + 1))
# # Set the new tag name with the incremented patch version number
# tag_name="v$major.$minor.$next_patch"
# # Set the tag_name output variable
# echo "{name}={$tag_name}" >> $GITHUB_OUTPUT
# continue-on-error: true

- name: Create a release
id: create_release
uses: actions/create-release@v1
with:
release_name: "Release: ${{ inputs.RELEASE }}"
tag_name: ${{ inputs.RELEASE }}
draft: ${{ inputs.IS_DRAFT }}
prerelease: false
- name: Create release
id: create_release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: ${{ steps.increment_tag.outputs.tag_name }}
release_name: Release ${{ steps.increment_tag.outputs.tag_name }}
body: |
Release ${{ steps.increment_tag.outputs.tag_name }}
-------------------------------
Add release notes here.
draft: false
prerelease: false
17 changes: 4 additions & 13 deletions .github/workflows/pr.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -18,26 +18,17 @@ jobs:
# TEST_MULTI_ENVIRONMENTS: true
secrets: inherit

# validate-go-basic-tests-file-single-os:
# permissions:
# pull-requests: write
# uses: ./.github/workflows/go-basic-tests.yaml
# with:
# GO_VERSION: 1.19
# BUILD_PATH: "./testdata/."
# UNIT_TESTS_PATH: "./testdata/."
# TEST_MULTI_ENVIRONMENTS: false
# secrets: inherit

# Validate release files and release pkg.
validate-package-releaser-file:
needs: validate-go-basic-tests-file
permissions:
contents: write
pull-requests: write
uses: ./.github/workflows/package-release.yaml
with:
RELEASE: "v0.0.${{ github.run_number }}"
RELEASE: "${{ github.ref }}"
GO_VERSION: 1.19
IS_DRAFT: true
IS_DRAFT: false
BUILD_PATH: "./testdata/."
UNIT_TESTS_PATH: "./testdata/."
secrets: inherit
Expand Down

0 comments on commit 9f48bc7

Please sign in to comment.