Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

feat: cr 22243 sync v3.5.4 #329

Merged
merged 32 commits into from
Jan 23, 2024
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
32 commits
Select commit Hold shift + click to select a range
047952a
fix: SDK workflow file
sarabala1979 Sep 19, 2022
0546fef
Merge branch 'master' into release-3.4
sarabala1979 Oct 1, 2022
c08563b
Merge branch 'master' into release-3.4
sarabala1979 Oct 23, 2022
eddb1b7
Merge remote-tracking branch 'upstream/master' into release-3.4
sarabala1979 Oct 31, 2022
bcfcece
feat: initial cf commit
denis-codefresh Dec 2, 2022
9c1a63c
feat: advanced sync (pull request #76)
denis-codefresh Dec 7, 2021
9a43ee3
feat: CR-8697 get artifact by manifest (pull request #107)
ATGardner Feb 8, 2022
40b40a0
wip
kim-codefresh Dec 27, 2022
f3dd847
wip
kim-codefresh Dec 28, 2022
44d9818
add artifact by manifest to openapi
kim-codefresh Dec 29, 2022
f6d3ac1
wip
kim-codefresh Dec 29, 2022
9aa649d
fix: support artifact files
kim-codefresh Dec 27, 2022
27a5ee2
fix: resolve conflicts
kim-codefresh Jan 2, 2023
b041819
Merge pull request #233 from codefresh-io/CR-15902
kim-codefresh Jan 3, 2023
43a16b2
fix: rebuild CR-15902 to fix argo-workflows empty page
kim-codefresh Feb 13, 2023
bf43adf
Merge pull request #241 from codefresh-io/CR-16945
kim-codefresh Feb 13, 2023
9c6ed07
ci: Pin buildx action version to fix release workflow (#10471)
terrytangyuan Feb 6, 2023
53753cc
Merge branch 'release-3.4' into CR-16945
kim-codefresh Feb 13, 2023
9bad67c
Merge pull request #242 from codefresh-io/CR-16945
kim-codefresh Feb 13, 2023
96276a4
fix: exit handler variables don't get resolved correctly. Fixes #1039…
kim-codefresh Feb 23, 2023
af70f78
fix: move log with potential sensitive data to debug loglevel. Fixes:…
melden19 Dec 18, 2023
8598ced
Merge pull request #323 from codefresh-io/CR-20826-argoexec-sensitive…
denis-codefresh Dec 22, 2023
be63115
set windows base image tag to ltsc2022-amd64
melden19 Dec 22, 2023
665b213
Merge pull request #324 from codefresh-io/update-win-baseimage
denis-codefresh Dec 22, 2023
3b64255
change release.yaml images: windows-2019 to windows-2022
denis-codefresh Dec 22, 2023
48bf7b5
merge conflicts
danielm-codefresh Jan 23, 2024
0a52eef
fix
danielm-codefresh Jan 23, 2024
3843306
result of codegen
danielm-codefresh Jan 23, 2024
43426c1
fix
danielm-codefresh Jan 23, 2024
5db0d36
Codegen
danielm-codefresh Jan 23, 2024
0e642cf
danielm-codefresh Jan 23, 2024
25284cf
danielm-codefresh Jan 23, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
4 changes: 2 additions & 2 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,8 @@ contact_links:
- name: Have you read the docs?
url: https://argo-workflows.readthedocs.io/en/latest
about: Much help can be found in the docs
- name: Ask a question
url: https://github.com/argoproj/argo-workflows/discussions/new
- name: Ask a question about Codefresh's Argo Worklfows
url: https://github.com/codefresh-io/argo-workflows/discussions/new
about: Ask a question or start a discussion about workflows
- name: Chat on Slack
url: https://argoproj.github.io/community/join-slack
Expand Down
3 changes: 2 additions & 1 deletion .github/workflows/ci-build.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,7 +7,8 @@ on:
- "!release-2.8"
pull_request:
branches:
- "main"
- "master"
- "release-*"

concurrency:
group: ${{ github.workflow }}-${{ github.ref }}
Expand Down
18 changes: 18 additions & 0 deletions .github/workflows/default-branch-check.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
name: PR check

on:
pull_request:
branches:
- "release-*"

jobs:
test-default-branch:
name: base branch is a default branch
runs-on: ubuntu-latest
steps:
- name: fail if base branch is not default branch
if: ${{ github.event.pull_request.base.ref != github.event.repository.default_branch }}
uses: actions/github-script@v3
with:
script: |
core.setFailed("Base branch of the PR - ${{ github.event.pull_request.base.ref }} is not a default branch. Please reopen your PR to ${{ github.event.repository.default_branch }}")
219 changes: 140 additions & 79 deletions .github/workflows/release.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -5,7 +5,8 @@ on:
tags:
- v*
branches:
- main
- master
- release-*
- dev-*

concurrency:
Expand All @@ -20,24 +21,94 @@ permissions:
contents: read

jobs:
build-linux:
name: Build & push linux
if: github.repository == 'argoproj/argo-workflows'
build-linux-amd64:
name: Build & push linux/amd64
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: ubuntu-latest
strategy:
matrix:
platform: [ linux/amd64, linux/arm64 ]
target: [ workflow-controller, argocli, argoexec ]
steps:
- uses: actions/checkout@v4
- uses: actions/checkout@v3

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v2
with:
version: v0.9.1

- name: Cache Docker layers
uses: actions/cache@v3
id: cache
with:
path: /tmp/.buildx-cache
key: ${{ runner.os }}-${{ matrix.platform }}-${{ matrix.target }}-buildx-${{ github.sha }}
restore-keys: |
${{ runner.os }}-${{ matrix.platform }}-${{ matrix.target }}-buildx-

## Codefresh - remove dockerhub
# - name: Docker Login
# uses: docker/login-action@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Docker Login
uses: docker/login-action@v2
with:
registry: quay.io
username: ${{ secrets.QUAYIO_USERNAME }}
password: ${{ secrets.QUAYIO_PASSWORD }}

- name: Docker Buildx
env:
DOCKERIO_ORG: ${{ secrets.DOCKERIO_ORG }}
PLATFORM: ${{ matrix.platform }}
TARGET: ${{ matrix.target }}
run: |
tag=$(basename $GITHUB_REF)
if [ $tag = "master" ]; then
tag="latest"
fi

tag_suffix=$(echo $PLATFORM | sed -r "s/\//-/g")
image_name="${DOCKERIO_ORG}/${TARGET}:${tag}-${tag_suffix}"

## Codefresh - remove dockerhub
# docker buildx build \
# --cache-from "type=local,src=/tmp/.buildx-cache" \
# --cache-to "type=local,dest=/tmp/.buildx-cache" \
# --output "type=image,push=true" \
# --platform="${PLATFORM}" \
# --target $TARGET \
# --tag $image_name .

docker buildx build \
--cache-from "type=local,src=/tmp/.buildx-cache" \
--cache-to "type=local,dest=/tmp/.buildx-cache" \
--output "type=image,push=true" \
--platform="${PLATFORM}" \
--target $TARGET \
--tag quay.io/$image_name .

build-linux-arm64:
name: Build & push linux/arm64
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: ubuntu-latest
strategy:
matrix:
platform: [ linux/arm64 ]
target: [ workflow-controller, argocli, argoexec ]
steps:
- uses: actions/checkout@v3

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

- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
uses: docker/setup-buildx-action@v2
with:
version: v0.10.4
version: v0.9.1

- name: Cache Docker layers
uses: actions/cache@v3
Expand All @@ -48,11 +119,12 @@ jobs:
restore-keys: |
${{ runner.os }}-${{ matrix.platform }}-${{ matrix.target }}-buildx-

- name: Docker Login
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERIO_USERNAME }}
password: ${{ secrets.DOCKERIO_PASSWORD }}
## Codefresh - remove dockerhub
# - name: Docker Login
# uses: docker/login-action@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Docker Login
uses: docker/login-action@v3
Expand All @@ -79,30 +151,35 @@ jobs:
tag_suffix=$(echo $PLATFORM | sed -r "s/\//-/g")
image_name="${DOCKERIO_ORG}/${TARGET}:${tag}-${tag_suffix}"

## Codefresh - remove dockerhub
# docker buildx build \
# --cache-from "type=local,src=/tmp/.buildx-cache" \
# --cache-to "type=local,dest=/tmp/.buildx-cache" \
# --output "type=image,push=true" \
# --platform="${PLATFORM}" \
# --target $TARGET \
# --tag $image_name .

docker buildx build \
--cache-from "type=local,src=/tmp/.buildx-cache" \
--cache-to "type=local,dest=/tmp/.buildx-cache" \
--output "type=image,push=true" \
--build-arg GIT_COMMIT=$GIT_COMMIT \
--build-arg GIT_TAG=$GIT_TAG \
--build-arg GIT_TREE_STATE=$GIT_TREE_STATE \
--platform="${PLATFORM}" \
--target $TARGET \
--provenance=false \
--tag $image_name \
--tag quay.io/$image_name .

build-windows:
name: Build & push windows
if: github.repository == 'argoproj/argo-workflows'
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: windows-2022
steps:
- uses: actions/checkout@v4
- name: Docker Login
uses: Azure/docker-login@v1
with:
username: ${{ secrets.DOCKERIO_USERNAME }}
password: ${{ secrets.DOCKERIO_PASSWORD }}
- uses: actions/checkout@v2
## Codefresh - remove dockerhub
# - name: Docker Login
# uses: Azure/docker-login@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Login to Quay
uses: Azure/docker-login@v1
Expand All @@ -125,16 +202,9 @@ jobs:
targets="argoexec"
for target in $targets; do
image_name="${docker_org}/${target}:${tag}-windows"
docker build \
--build-arg GIT_COMMIT=$tag \
--build-arg GIT_BRANCH=$branch \
--build-arg GIT_TREE_STATE=$tree_state \
--target $target \
-t $image_name \
-f Dockerfile.windows \
.

docker push $image_name
docker build --target $target -t $image_name -f Dockerfile.windows .
## Codefresh - remove dockerhub
# docker push $image_name

docker tag $image_name quay.io/$image_name
docker push quay.io/$image_name
Expand All @@ -143,16 +213,17 @@ jobs:

push-images:
name: Push manifest with all images
if: github.repository == 'argoproj/argo-workflows'
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: ubuntu-latest
needs: [ build-linux, build-windows ]
steps:
- uses: actions/checkout@v4
- name: Docker Login
uses: Azure/docker-login@v1
with:
username: ${{ secrets.DOCKERIO_USERNAME }}
password: ${{ secrets.DOCKERIO_PASSWORD }}
- uses: actions/checkout@v2
## Codefresh - remove dockerhub
# - name: Docker Login
# uses: Azure/docker-login@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Login to Quay
uses: Azure/docker-login@v1
Expand Down Expand Up @@ -186,14 +257,17 @@ jobs:
image_name="${docker_org}/${target}:${tag}"

if [ $target = "argoexec" ]; then
docker manifest create $image_name ${image_name}-linux-arm64 ${image_name}-linux-amd64 ${image_name}-windows
## Codefresh - remove dockerhub
# docker manifest create $image_name ${image_name}-linux-arm64 ${image_name}-linux-amd64 ${image_name}-windows
docker manifest create quay.io/$image_name quay.io/${image_name}-linux-arm64 quay.io/${image_name}-linux-amd64 quay.io/${image_name}-windows
else
docker manifest create $image_name ${image_name}-linux-arm64 ${image_name}-linux-amd64
## Codefresh - remove dockerhub
# docker manifest create $image_name ${image_name}-linux-arm64 ${image_name}-linux-amd64
docker manifest create quay.io/$image_name quay.io/${image_name}-linux-arm64 quay.io/${image_name}-linux-amd64
fi

docker manifest push $image_name
## Codefresh - remove dockerhub
# docker manifest push $image_name
docker manifest push quay.io/$image_name

cosign sign --key env://COSIGN_PRIVATE_KEY quay.io/$image_name
Expand All @@ -202,19 +276,20 @@ jobs:

test-images-linux-amd64:
name: Try pulling linux/amd64
if: github.repository == 'argoproj/argo-workflows'
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: ubuntu-latest
needs: [ push-images ]
strategy:
matrix:
platform: [ linux/amd64 ]
target: [ workflow-controller, argocli, argoexec ]
steps:
- name: Docker Login
uses: Azure/docker-login@v1
with:
username: ${{ secrets.DOCKERIO_USERNAME }}
password: ${{ secrets.DOCKERIO_PASSWORD }}
## Codefresh - remove dockerhub
# - name: Docker Login
# uses: Azure/docker-login@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Login to Quay
uses: Azure/docker-login@v1
Expand All @@ -235,20 +310,22 @@ jobs:
fi

image_name="${DOCKERIO_ORG}/${TARGET}:${tag}"
docker pull $image_name
## Codefresh - remove dockerhub
# docker pull $image_name
docker pull quay.io/$image_name

test-images-windows:
name: Try pulling windows
if: github.repository == 'argoproj/argo-workflows'
if: github.repository == 'codefresh-io/argo-workflows'
runs-on: windows-2022
needs: [ push-images ]
steps:
- name: Docker Login
uses: Azure/docker-login@v1
with:
username: ${{ secrets.DOCKERIO_USERNAME }}
password: ${{ secrets.DOCKERIO_PASSWORD }}
## Codefresh - remove dockerhub
# - name: Docker Login
# uses: Azure/docker-login@v1
# with:
# username: ${{ secrets.DOCKERIO_USERNAME }}
# password: ${{ secrets.DOCKERIO_PASSWORD }}

- name: Login to Quay
uses: Azure/docker-login@v1
Expand All @@ -269,15 +346,16 @@ jobs:
targets="argoexec"
for target in $targets; do
image_name="${docker_org}/${target}:${tag}"
docker pull $image_name
## Codefresh - remove dockerhub
# docker pull $image_name
docker pull quay.io/$image_name
done

publish-release:
permissions:
contents: write # for softprops/action-gh-release to create GitHub release
runs-on: ubuntu-latest
if: github.repository == 'argoproj/argo-workflows'
if: github.repository == 'codefresh-io/argo-workflows'
needs: [ push-images, test-images-linux-amd64, test-images-windows ]
env:
NODE_OPTIONS: --max-old-space-size=4096
Expand All @@ -301,31 +379,14 @@ jobs:
with:
cosign-release: 'v1.13.0'
# https://stackoverflow.com/questions/58033366/how-to-get-current-branch-within-github-actions
- run: |
if [ ${GITHUB_REF##*/} = main ]; then
echo "VERSION=latest" >> $GITHUB_ENV
else
echo "VERSION=${GITHUB_REF##*/}" >> $GITHUB_ENV
fi
- run: go install sigs.k8s.io/bom/cmd/[email protected]
- run: go install github.com/spdx/spdx-sbom-generator/cmd/[email protected]
- run: mkdir -p dist
- run: generator -o dist -p .
- run: yarn --cwd ui install
- run: generator -o dist -p ui
- run: bom generate --image quay.io/argoproj/workflow-controller:$VERSION -o dist/workflow-controller.spdx
- run: bom generate --image quay.io/argoproj/argocli:$VERSION -o dist/argocli.spdx
- run: bom generate --image quay.io/argoproj/argoexec:$VERSION -o dist/argoexec.spdx
# pack the boms into one file to make it easy to download
- run: tar -zcf dist/sbom.tar.gz dist/*.spdx
- run: make release-notes VERSION=$VERSION
- run: make release-notes VERSION=${GITHUB_REF##*/}
- run: cat release-notes
- run: make manifests VERSION=$VERSION
- run: make manifests VERSION=${GITHUB_REF##*/}
- name: Print image tag (please check it is not `:latest`)
run: |
grep image: dist/manifests/install.yaml
- run: go mod download
- run: make clis STATIC_FILES=true VERSION=$VERSION
- run: make clis STATIC_FILES=true VERSION=${GITHUB_REF##*/}
- name: Print version (please check it is not dirty)
run: dist/argo-linux-amd64 version
- run: make checksums
Expand Down
Loading