Skip to content

Commit

Permalink
new commit
Browse files Browse the repository at this point in the history
Signed-off-by: Aryan-sharma11 <aryan1126.sharma@gmail.com>
  • Loading branch information
Aryan-sharma11 committed Dec 24, 2024
1 parent 3af6e93 commit e2e18da
Showing 1 changed file with 19 additions and 101 deletions.
120 changes: 19 additions & 101 deletions .github/workflows/ci-latest-release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -2,9 +2,7 @@ name: ci-latest-release

on:
push:
# branches:
# - "main"
# - "v*"
branches: [main]
paths:
- "KubeArmor/**"
- "protobuf/**"
Expand All @@ -13,19 +11,27 @@ on:
- "!STABLE-RELEASE"
pull_request:
branches: [main]
paths:
- "KubeArmor/**"
- "tests/**"
- "protobuf/**"
- ".github/workflows/ci-test-ginkgo.yml"
- "examples/multiubuntu/build/**"
- "pkg/KubeArmorOperator/**"
- "deployments/helm/**"

create:
branches:
- "v*"
# create:
# branches:
# - "v*"

# Declare default permissions as read only.
permissions: read-all

jobs:
check:
name: Check what pkg were updated
if: github.repository == 'aryan1126/kubearmor'
runs-on: ubuntu-20.04
if: github.repository == 'Aryan-sharma11/kubearmor'
runs-on: ubuntu-latest
timeout-minutes: 5
outputs:
kubearmor: ${{ steps.filter.outputs.kubearmor}}
Expand All @@ -45,8 +51,8 @@ jobs:
build:
name: Create KubeArmor latest release
needs: check
if: github.repository == 'aryan1126/kubearmor' && (needs.check.outputs.kubearmor == 'true' || ${{ github.ref }} != 'refs/heads/main')
runs-on: ubuntu-latest-16-cores
if: github.repository == 'Aryan-sharma11/kubearmor'
runs-on: ubuntu-20.04
permissions:
id-token: write
timeout-minutes: 150
Expand All @@ -67,8 +73,8 @@ jobs:
- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_AUTHTOK }}
username: aryan1126
password: aryan1126

- name: Set up QEMU
uses: docker/setup-qemu-action@v2
Expand Down Expand Up @@ -96,92 +102,4 @@ jobs:
cosign sign -r kubearmor/kubearmor@${{ steps.digest.outputs.imagedigest }} --yes
cosign sign -r kubearmor/kubearmor-init@${{ steps.digest.outputs.initdigest }} --yes
cosign sign -r kubearmor/kubearmor-ubi@${{ steps.digest.outputs.ubidigest }} --yes
push-stable-version:
name: Create KubeArmor stable release
needs: [build, check]
if: github.ref != 'refs/heads/main'
runs-on: ubuntu-20.04
permissions:
id-token: write
timeout-minutes: 60
steps:
- uses: actions/checkout@v3
with:
ref: main

- name: Install regctl
run: |
curl -L https://github.com/regclient/regclient/releases/latest/download/regctl-linux-amd64 >regctl
chmod 755 regctl
mv regctl /usr/local/bin
- name: Check install
run: regctl version

- name: Get tag
id: match
run: |
value=`cat STABLE-RELEASE`
if [ ${{ github.ref }} == "refs/heads/$value" ]; then
echo "tag=true" >> $GITHUB_OUTPUT
else
echo "tag=false" >> $GITHUB_OUTPUT
fi
- name: Login to Docker Hub
if: steps.match.outputs.tag == 'true'
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_AUTHTOK }}

- name: Generate the stable version of KubeArmor in Docker Hub
if: steps.match.outputs.tag == 'true'
run: |
STABLE_VERSION=`cat STABLE-RELEASE`
regctl image copy kubearmor/kubearmor:$STABLE_VERSION kubearmor/kubearmor:stable --digest-tags
regctl image copy kubearmor/kubearmor-ubi:$STABLE_VERSION kubearmor/kubearmor-ubi:stable --digest-tags
regctl image copy kubearmor/kubearmor-controller:$STABLE_VERSION kubearmor/kubearmor-controller:stable --digest-tags
kubearmor-controller-release:
name: Build & Push KubeArmorController
needs: check
if: github.repository == 'kubearmor/kubearmor' && (needs.check.outputs.controller == 'true' || ${{ github.ref }} != 'refs/heads/main')
defaults:
run:
working-directory: ./pkg/KubeArmorController
runs-on: ubuntu-latest-16-cores
timeout-minutes: 60
steps:
- uses: actions/checkout@v3

- uses: actions/setup-go@v5
with:
go-version-file: 'KubeArmor/go.mod'

- name: Set up QEMU
uses: docker/setup-qemu-action@v2

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
platforms: linux/amd64,linux/arm64/v8

- name: Login to Docker Hub
uses: docker/login-action@v2
with:
username: ${{ secrets.DOCKER_USERNAME }}
password: ${{ secrets.DOCKER_AUTHTOK }}

- name: Get tag
id: tag
run: |
if [ ${{ github.ref }} == "refs/heads/main" ]; then
echo "tag=latest" >> $GITHUB_OUTPUT
else
echo "tag=${GITHUB_REF#refs/*/}" >> $GITHUB_OUTPUT
fi
- name: Build & Push KubeArmorController
run: make docker-buildx TAG=${{ steps.tag.outputs.tag }}

0 comments on commit e2e18da

Please sign in to comment.