Skip to content

Commit

Permalink
[bot] update konflux configuration
Browse files Browse the repository at this point in the history
  • Loading branch information
openshift-pipelines-bot authored and vdemeester committed Nov 21, 2024
1 parent 5ae1366 commit fd2d05a
Show file tree
Hide file tree
Showing 13 changed files with 296 additions and 2 deletions.
39 changes: 39 additions & 0 deletions .github/workflows/auto-merge.next.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,39 @@
name: auto-merge-next

on:
workflow_dispatch: {}
schedule:
- cron: "*/30 * * * *" # At every 30 minutes

jobs:
auto-approve:
runs-on: ubuntu-latest
if: github.repository_owner == 'openshift-pipelines' # do not run this elsewhere
permissions:
pull-requests: write
steps:
- name: Checkout the current repo
uses: actions/checkout@v4
- name: auto-merge-update-references
run: |
gh auth status
git config user.name openshift-pipelines-bot
git config user.email [email protected]
# Approve and merge pull-request with no reviews
for p in $(gh pr list --search "author:app/red-hat-konflux head:konflux/references/next" --json "number" | jq ".[].number"); do
gh pr merge --rebase --delete-branch --auto $p
done
env:
GH_TOKEN: ${{ secrets.OPENSHIFT_PIPELINES_ROBOT }}
- name: auto-merge-upstream-next
run: |
gh auth status
git config user.name openshift-pipelines-bot
git config user.email [email protected]
# Approve and merge pull-request with no reviews
for p in $(gh pr list --search "head:actions/update/sources-next" --json "number" | jq ".[].number"); do
gh pr merge --rebase --delete-branch --auto $p
done
env:
GH_TOKEN: ${{ secrets.OPENSHIFT_PIPELINES_ROBOT }}

73 changes: 73 additions & 0 deletions .github/workflows/update-sources.next.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,73 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
name: update-sources-next

on:
workflow_dispatch: {}
schedule:
- cron: "30 */12 * * *" # At minute 30 past every 12th hour.

jobs:

update-sources:
runs-on: ubuntu-latest
if: github.repository_owner == 'openshift-pipelines' # do not run this elsewhere
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout the current repo
uses: actions/checkout@v4
with:
ref: next

- name: Clone tektoncd/hub
run: |
rm -fR upstream
git clone https://github.com/tektoncd/hub upstream
pushd upstream
git checkout -B release-v1.19.0 origin/release-v1.19.0
popd
- name: Commit new changes
run: |
git config user.name openshift-pipelines-bot
git config user.email [email protected]
git checkout -b actions/update/sources-next
pushd upstream
OLD_COMMIT=$(cat ../head)
NEW_COMMIT=$(git rev-parse HEAD)
echo Previous commit: ${OLD_COMMIT}
git show --stat ${OLD_COMMIT}
echo New commit: ${NEW_COMMIT}
git show --stat ${NEW_COMMIT}
git diff --stat ${NEW_COMMIT}..${OLD_COMMIT} > /tmp/diff.txt
git rev-parse HEAD > ../head
popd
rm -rf upstream/.git
git add upstream head .konflux
if [[ -z $(git status --porcelain --untracked-files=no) ]]; then
echo "No change, exiting"
exit 0
fi
git commit -F- <<EOF
[bot] Update from tektoncd/hub to ${NEW_COMMIT}
$ git diff --stat ${NEW_COMMIT}..${OLD_COMMIT}
$(cat /tmp/diff.txt | sed 's/^/ /')
https://github.com/tektoncd/hub/compare/${NEW_COMMIT}..${OLD_COMMIT}
EOF
git push -f origin actions/update/sources-next
if [ "$(gh pr list --base next --head actions/update/sources-next --json url --jq 'length')" = "0" ]; then
echo "creating PR..."
gh pr create -B next -H actions/update/sources-next --label=automated --label=upstream --fill
else
echo "a PR already exists, editing..."
gh pr edit --title "[bot] Update from tektoncd/hub to ${NEW_COMMIT}" --body "$(cat /tmp/diff.txt | sed 's/^/ /')"
fi
env:
GH_TOKEN: ${{ secrets.GITHUB_TOKEN }}
25 changes: 25 additions & 0 deletions .konflux/main/tests-on-push.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
name: tektoncd-hub-main-enterprise-contract-push
spec:
application: tektoncd-hub-main
contexts:
- description: Application testing
name: push
params:
- name: POLICY_CONFIGURATION
value: tekton-ecosystem-tenant/tekton-ecosystem-tenant-containers
- name: TIMEOUT
value: "15m0s"
resolverRef:
params:
- name: url
value: "https://github.com/konflux-ci/build-definitions"
- name: revision
value: main
- name: pathInRepo
value: pipelines/enterprise-contract.yaml
resolver: git
4 changes: 2 additions & 2 deletions .konflux/main/tests.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -3,12 +3,12 @@
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
name: tektoncd-hub-main-enterprise-contract
name: tektoncd-hub-main-enterprise-contract-group
spec:
application: tektoncd-hub-main
contexts:
- description: Application testing
name: application
name: group
params:
- name: POLICY_CONFIGURATION
value: tekton-ecosystem-tenant/tekton-ecosystem-tenant-containers
Expand Down
8 changes: 8 additions & 0 deletions .konflux/next/application.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: Application
metadata:
name: tektoncd-hub-next
spec:
displayName: tektoncd-hub next
18 changes: 18 additions & 0 deletions .konflux/next/component-db-migration.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: Component
metadata:
annotations:
build.appstudio.openshift.io/pipeline: '{"name":"docker-build-multi-platform-oci-ta","bundle":"latest"}'
name: tektoncd-hub-next-db-migration
spec:
componentName: db-migration
application: tektoncd-hub-next
build-nudges-ref:
- operator-next-bundle
source:
git:
url: https://github.com/openshift-pipelines/tektoncd-hub
dockerfileUrl: .konflux/dockerfiles/db-migration.Dockerfile
revision: next
18 changes: 18 additions & 0 deletions .konflux/next/component-hub-api.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: Component
metadata:
annotations:
build.appstudio.openshift.io/pipeline: '{"name":"docker-build-multi-platform-oci-ta","bundle":"latest"}'
name: tektoncd-hub-next-hub-api
spec:
componentName: hub-api
application: tektoncd-hub-next
build-nudges-ref:
- operator-next-bundle
source:
git:
url: https://github.com/openshift-pipelines/tektoncd-hub
dockerfileUrl: .konflux/dockerfiles/hub-api.Dockerfile
revision: next
18 changes: 18 additions & 0 deletions .konflux/next/component-hub-ui.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: Component
metadata:
annotations:
build.appstudio.openshift.io/pipeline: '{"name":"docker-build-multi-platform-oci-ta","bundle":"latest"}'
name: tektoncd-hub-next-hub-ui
spec:
componentName: hub-ui
application: tektoncd-hub-next
build-nudges-ref:
- operator-next-bundle
source:
git:
url: https://github.com/openshift-pipelines/tektoncd-hub
dockerfileUrl: .konflux/dockerfiles/hub-ui.Dockerfile
revision: next
15 changes: 15 additions & 0 deletions .konflux/next/image-db-migration.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: ImageRepository
metadata:
name: tektoncd-hub-next-db-migration
annotations:
image-controller.appstudio.redhat.com/update-component-image: "true"
labels:
appstudio.redhat.com/component: tektoncd-hub-next-db-migration
appstudio.redhat.com/application: tektoncd-hub-next
spec:
image:
name: tektoncd-hub-next/db-migration
visibility: public
15 changes: 15 additions & 0 deletions .konflux/next/image-hub-api.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: ImageRepository
metadata:
name: tektoncd-hub-next-hub-api
annotations:
image-controller.appstudio.redhat.com/update-component-image: "true"
labels:
appstudio.redhat.com/component: tektoncd-hub-next-hub-api
appstudio.redhat.com/application: tektoncd-hub-next
spec:
image:
name: tektoncd-hub-next/hub-api
visibility: public
15 changes: 15 additions & 0 deletions .konflux/next/image-hub-ui.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1alpha1
kind: ImageRepository
metadata:
name: tektoncd-hub-next-hub-ui
annotations:
image-controller.appstudio.redhat.com/update-component-image: "true"
labels:
appstudio.redhat.com/component: tektoncd-hub-next-hub-ui
appstudio.redhat.com/application: tektoncd-hub-next
spec:
image:
name: tektoncd-hub-next/hub-ui
visibility: public
25 changes: 25 additions & 0 deletions .konflux/next/tests-on-push.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
name: tektoncd-hub-next-enterprise-contract-push
spec:
application: tektoncd-hub-next
contexts:
- description: Application testing
name: push
params:
- name: POLICY_CONFIGURATION
value: tekton-ecosystem-tenant/tekton-ecosystem-tenant-containers
- name: TIMEOUT
value: "15m0s"
resolverRef:
params:
- name: url
value: "https://github.com/konflux-ci/build-definitions"
- name: revision
value: main
- name: pathInRepo
value: pipelines/enterprise-contract.yaml
resolver: git
25 changes: 25 additions & 0 deletions .konflux/next/tests.yaml
Original file line number Diff line number Diff line change
@@ -0,0 +1,25 @@
# Generated by openshift-pipelines/hack. DO NOT EDIT.
---
apiVersion: appstudio.redhat.com/v1beta2
kind: IntegrationTestScenario
metadata:
name: tektoncd-hub-next-enterprise-contract-group
spec:
application: tektoncd-hub-next
contexts:
- description: Application testing
name: group
params:
- name: POLICY_CONFIGURATION
value: tekton-ecosystem-tenant/tekton-ecosystem-tenant-containers
- name: TIMEOUT
value: "15m0s"
resolverRef:
params:
- name: url
value: "https://github.com/konflux-ci/build-definitions"
- name: revision
value: main
- name: pathInRepo
value: pipelines/enterprise-contract.yaml
resolver: git

0 comments on commit fd2d05a

Please sign in to comment.