From 991d302dd52ae91a8270f4ea1ac6a36f4c3c54c9 Mon Sep 17 00:00:00 2001 From: Gang Li Date: Wed, 18 Mar 2026 16:20:06 +0800 Subject: [PATCH] Update github actions * checkout action: update to v6 * java action: update to v5, and update java version to 17 * maven-settings-xml-action: update to v22 * add dependabot * Remove jenkinsfile --- .github/dependabot.yml | 19 ++++++ .github/workflows/merge-build.yml | 19 ++++-- .github/workflows/pr-build.yml | 11 ++-- Jenkinsfile | 102 ------------------------------ Jenkinsfile.sidecar | 85 ------------------------- 5 files changed, 38 insertions(+), 198 deletions(-) create mode 100644 .github/dependabot.yml delete mode 100644 Jenkinsfile delete mode 100644 Jenkinsfile.sidecar diff --git a/.github/dependabot.yml b/.github/dependabot.yml new file mode 100644 index 0000000..f70fe33 --- /dev/null +++ b/.github/dependabot.yml @@ -0,0 +1,19 @@ +# To get started with Dependabot version updates, you'll need to specify which +# package ecosystems to update and where the package manifests are located. +# Please see the documentation for all configuration options: +# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates +version: 2 +updates: + - package-ecosystem: "maven" # See documentation for possible values + directory: "/" # Location of package manifests + schedule: + interval: "weekly" + ignore: + - dependency-name: "*" + update-types: ["version-update:semver-major"] + + - package-ecosystem: "github-actions" # Also update Github actions + directory: "/" + schedule: + # Check for updates to GitHub Actions every week + interval: "weekly" diff --git a/.github/workflows/merge-build.yml b/.github/workflows/merge-build.yml index 3989f45..11bbeb8 100644 --- a/.github/workflows/merge-build.yml +++ b/.github/workflows/merge-build.yml @@ -19,7 +19,14 @@ name: Merge / Push Build -on: [push] +on: + push: + branches: + - 'main' + - '1.0.x' + paths: + - 'src/**' + - 'pom.xml' jobs: publish-snapshot: @@ -35,17 +42,17 @@ jobs: MAVEN_OPTS: "-Xmx4096m -Xms2048m -XX:MaxMetaspaceSize=4096m -Xss8m" steps: - - uses: actions/checkout@v4 + - uses: actions/checkout@v6 - name: Set up JDK - uses: actions/setup-java@v3 + uses: actions/setup-java@v5 with: distribution: 'temurin' architecture: x64 - java-version: 11 + java-version: 17 - name: maven-settings-xml-action - uses: whelk-io/maven-settings-xml-action@v14 + uses: whelk-io/maven-settings-xml-action@v22 with: repositories: '[{ "id": "sonatype", "url": "https://oss.sonatype.org/content/repositories/snapshots/", "releases": {"enabled": "false"}, "snapshots": {"enabled": "true" }}]' @@ -58,7 +65,7 @@ jobs: run: mvn -B -e clean install - name: Checkout tools repo - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: repository: Commonjava/commonjava-images path: commonjava-images diff --git a/.github/workflows/pr-build.yml b/.github/workflows/pr-build.yml index 820914d..4b9fb0c 100644 --- a/.github/workflows/pr-build.yml +++ b/.github/workflows/pr-build.yml @@ -27,16 +27,17 @@ jobs: runs-on: ubuntu-latest steps: - - uses: actions/checkout@v2 + - uses: actions/checkout@v6 - name: Set up JDK - uses: actions/setup-java@v2 + uses: actions/setup-java@v5 with: - java-version: '11' - distribution: 'adopt' + distribution: 'temurin' + architecture: x64 + java-version: 17 - name: maven-settings-xml-action - uses: whelk-io/maven-settings-xml-action@v14 + uses: whelk-io/maven-settings-xml-action@v22 with: repositories: '[{ "id": "sonatype", "url": "https://oss.sonatype.org/content/repositories/snapshots/", "releases": {"enabled": "false"}, "snapshots": {"enabled": "true" }}]' diff --git a/Jenkinsfile b/Jenkinsfile deleted file mode 100644 index 051d7c4..0000000 --- a/Jenkinsfile +++ /dev/null @@ -1,102 +0,0 @@ -def artifact="target/*.jar" -def artifact_runner="target/*-runner.jar" - -def ocp_map = '/mnt/ocp/jenkins-openshift-mappings.json' -def bc_section = 'build-configs' - -def my_bc = null - -pipeline { - agent { label 'maven-36-jdk11' } - stages { - stage('Prepare') { - steps { - sh 'printenv' - } - } - stage('Build & ITs') { - when { - expression { env.CHANGE_ID != null } // Pull request - } - steps { - sh '${M2_HOME}/bin/mvn -B -V clean verify -Prun-its' - } - } - stage('Load OCP Mappings') { - when { - allOf { - expression { env.CHANGE_ID == null } // Not pull request - } - } - steps { - echo "Load OCP Mapping document" - script { - def exists = fileExists ocp_map - if (exists){ - def jsonObj = readJSON file: ocp_map - if (bc_section in jsonObj){ - if (env.GIT_URL in jsonObj[bc_section]) { - echo "Found BC for Git repo: ${env.GIT_URL}" - if (env.BRANCH_NAME in jsonObj[bc_section][env.GIT_URL]) { - my_bc = jsonObj[bc_section][env.GIT_URL][env.BRANCH_NAME] - } else { - my_bc = jsonObj[bc_section][env.GIT_URL]['default'] - } - echo "Using BuildConfig: ${my_bc}" - } - else { - echo "Git URL: ${env.GIT_URL} not found in BC mapping." - } - } - else { - "BC mapping is invalid! No ${bc_section} sub-object found!" - } - } - else { - echo "JSON configuration file not found: ${ocp_map}" - } - } - } - } - stage('Deploy') { - when { - allOf { - expression { my_bc != null } - expression { env.CHANGE_ID == null } // Not Pull request - } - } - steps { - echo "Deploy" - sh '${M2_HOME}/bin/mvn help:effective-settings -B -V clean deploy -e -DskipTests' - } - } - stage('Archive') { - steps { - echo "Archive" - archiveArtifacts artifacts: "$artifact", fingerprint: true - } - } - stage('Build & Push Image') { - when { - allOf { - expression { my_bc != null } - expression { env.CHANGE_ID == null } // Not pull request - } - } - steps { - script { - def artifact_runner_file = sh(script: "ls $artifact_runner", returnStdout: true)?.trim() - def tarball_url = "${BUILD_URL}artifact/$artifact_runner_file" - openshift.withCluster() { - openshift.withProject() { - echo "Starting image build: ${openshift.project()}:${my_bc}" - def bc = openshift.selector("bc", my_bc) - def buildSel = bc.startBuild("-e tarball_url=${tarball_url}") - buildSel.logs("-f") - } - } - } - } - } - } -} \ No newline at end of file diff --git a/Jenkinsfile.sidecar b/Jenkinsfile.sidecar deleted file mode 100644 index 636283c..0000000 --- a/Jenkinsfile.sidecar +++ /dev/null @@ -1,85 +0,0 @@ -pipeline { - agent { - kubernetes { - cloud "openshift" - label "jenkins-slave-${UUID.randomUUID().toString()}" - serviceAccount "jenkins" - defaultContainer 'jnlp' - yaml """ - apiVersion: v1 - kind: Pod - metadata: - labels: - app: "jenkins-${env.JOB_BASE_NAME}" - indy-pipeline-build-number: "${env.BUILD_NUMBER}" - spec: - containers: - - name: sidecar - image: quay.io/kaine/indy-sidecar:latest - imagePullPolicy: Always - volumeMounts: - - mountPath: /deployments/config/proxy.yaml - readOnly: true - name: sidecar-config - subPath: proxy.yaml - - mountPath: /deployments/config/application.yaml - readOnly: true - name: sidecar-config - subPath: application.yaml - env: - - name: JAVA_OPTS - value: '-Xms3G -Xmx3G -Xss256k' - ports: - - containerPort: 8080 - protocol: TCP - - name: jnlp - image: quay.io/factory2/jenkins-agent:maven-36-rhel7-latest - imagePullPolicy: Always - tty: true - env: - - name: HOME - value: /home/jenkins-11-openjdk - volumeMounts: - - mountPath: /home/jenkins/sonatype - name: volume-0 - - mountPath: /mnt/ocp - name: volume-2 - - mountPath: /home/jenkins-11-openjdk/.m2/settings.xml - subPath: settings.xml - name: sidecar-config - workingDir: /home/jenkins-11-openjdk - volumes: - - name: volume-0 - secret: - defaultMode: 420 - secretName: sonatype-secrets - - name: volume-2 - configMap: - defaultMode: 420 - name: jenkins-openshift-mappings - - name: sidecar-config - configMap: - defaultMode: 420 - name: sidecar-jenkinsci-config - """ - } - } - stages { - stage('git checkout') { - steps{ - script{ - checkout([$class : 'GitSCM', branches: [[name: 'master']], doGenerateSubmoduleConfigurations: false, - extensions : [[$class: 'RelativeTargetDirectory', relativeTargetDir: 'indy-sidecar'], [$class: 'CleanCheckout']], - submoduleCfg: [], userRemoteConfigs: [[url: 'https://github.com/commonjava/indy-sidecar']]]) - } - } - } - stage('build test'){ - steps { - dir('indy-sidecar'){ - sh 'mvn -s /home/jenkins-11-openjdk/.m2/settings.xml clean install' - } - } - } - } -}