diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml new file mode 100644 index 00000000000..1191443093a --- /dev/null +++ b/.github/workflows/ci.yml @@ -0,0 +1,20 @@ +name: Continuous Integration +concurrency: + group: ${{ github.workflow }}-${{ github.ref }} + cancel-in-progress: true + +on: + push: + branches: [ master ] + pull_request: + branches: [ master ] + +jobs: + build: + uses: ./.github/workflows/mavenBuild.yml + with: + maven-goals: clean verify -Pjavadoc -DskipTests -Dcbi-ecj-version=99.99 + submodules: true + extra-setup: | + git submodule update --remote + mvn clean install -U -pl :eclipse-sdk-prereqs,:org.eclipse.jdt.core.compiler.batch -DlocalEcjVersion=99.99 diff --git a/.github/workflows/mavenBuild.yml b/.github/workflows/mavenBuild.yml index 5ee760745fa..7b65477e6f2 100644 --- a/.github/workflows/mavenBuild.yml +++ b/.github/workflows/mavenBuild.yml @@ -15,6 +15,11 @@ on: type: string required: false default: 'false' + extra-setup: + description: Optional command executed initially to perform additional setup of the build environment + type: string + required: false + default: '' mavenVersion: description: 'The version of Maven set up' type: string @@ -58,6 +63,8 @@ jobs: name: Verify ${{ matrix.config.name }} steps: + - name: Enable git longpaths + run: git config --global core.longpaths true - name: Checkout uses: actions/checkout@11bd71901bbe5b1630ceea73d27597364c9af683 # v4.2.2 with: @@ -87,6 +94,11 @@ jobs: uses: eclipse-platform/eclipse.platform.releng.aggregator/.github/actions/install-maven-parent-action@master if : inputs.without-EF-infra + - name: Additional setup + if: inputs.extra-setup + run: | + ${{ inputs.extra-setup }} + - name: Build with Maven run: >- ${{ runner.os == 'Linux' && 'xvfb-run' || '' }}