Fix ci errors 2025.01.0 #6495
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
name: CI | |
on: | |
push: | |
branches: [ "2025.01" ] | |
pull_request: | |
branches: [ "2025.01" ] | |
env: | |
CODEARTIFACT_DOWNLOAD_URL: ${{ secrets.CODEARTIFACT_DOWNLOAD_URL }} | |
CODEARTIFACT_USERNAME: ${{ secrets.CODEARTIFACT_USERNAME }} | |
ECR_NEO4J_DOCKER_URL: ${{ secrets.ECR_NEO4J_DOCKER_URL }} | |
BRANCH_NAME: ${{ github.event.pull_request.base.ref }} | |
jobs: | |
code-ql: | |
runs-on: ubuntu-latest | |
permissions: | |
actions: read | |
contents: read | |
security-events: write | |
strategy: | |
fail-fast: false | |
matrix: | |
language: [ 'java', 'javascript' ] | |
steps: | |
- name: Set RELEASE_BRANCH_NAME based on branch name | |
run: | | |
if [[ "$BRANCH_NAME" =~ [0-9]{4}\.(0[1-9]|1[0-2]) || "$BRANCH_NAME" =~ ^5\.[0-9]+$ ]]; then | |
echo "RELEASE_BRANCH_NAME=true" >> $GITHUB_ENV | |
else | |
echo "RELEASE_BRANCH_NAME=false" >> $GITHUB_ENV | |
fi | |
- name: Configure AWS CLI | |
uses: aws-actions/configure-aws-credentials@v2 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: eu-west-1 | |
- name: Configure CodeArtifact Authentication Token | |
run: | | |
CODEARTIFACT_TOKEN=`aws codeartifact get-authorization-token --domain build-service-live --domain-owner ${{ secrets.AWS_ACCOUNT_ID }} --query authorizationToken --output text` | |
echo "::add-mask::$CODEARTIFACT_TOKEN" | |
echo "CODEARTIFACT_TOKEN=$CODEARTIFACT_TOKEN" >> "$GITHUB_ENV" | |
- name: Login in to AWS ECR | |
run: | | |
aws ecr get-login-password --region eu-west-1 | docker login --username AWS --password-stdin $ECR_NEO4J_DOCKER_URL | |
- uses: actions/checkout@v3 | |
- uses: ./.github/actions/setup-jdk | |
- uses: ./.github/actions/setup-gradle-cache | |
- name: Determine latest neo4j CI version and docker images | |
run: | | |
neo4j_version_base=$(grep -e "neo4jVersion = .*" build.gradle | cut -d '=' -f 2 | tr -d \'\" | tr -d ' ') | |
echo "neo4j_version_base=$neo4j_version_base" | |
NEO4JVERSION=`aws --no-cli-pager codeartifact list-package-versions --domain build-service-live --domain-owner ${{ secrets.AWS_ACCOUNT_ID }} --repository ci-live --format maven --namespace org.neo4j --package neo4j --sort-by PUBLISHED_TIME --status Published --query "versions[?starts_with(version, '$neo4j_version_base')].version | [0]" --output json | sed 's/"//g'` | |
if [ -z "$NEO4JVERSION" ] || [ "$NEO4JVERSION" = "null" ]; then | |
NEO4JVERSION="$neo4j_version_base" | |
fi | |
echo "NEO4JVERSION=$NEO4JVERSION" >> "$GITHUB_ENV" | |
echo "Found NEO4JVERSION=$NEO4JVERSION" | |
if [[ $RELEASE_BRANCH_NAME ]]; then | |
NEO4J_DOCKER_EE_OVERRIDE="neo4j:$neo4j_version_base-enterprise" | |
NEO4J_DOCKER_CE_OVERRIDE="neo4j:$neo4j_version_base" | |
else | |
NEO4J_DOCKER_CE_OVERRIDE="$ECR_NEO4J_DOCKER_URL:$neo4j_version_base-community-debian-nightly" | |
NEO4J_DOCKER_EE_OVERRIDE="$ECR_NEO4J_DOCKER_URL:$neo4j_version_base-enterprise-debian-nightly" | |
fi | |
echo "NEO4J_DOCKER_EE_OVERRIDE=$NEO4J_DOCKER_EE_OVERRIDE" >> "$GITHUB_ENV" | |
echo "Found NEO4J_DOCKER_EE_OVERRIDE=$NEO4J_DOCKER_EE_OVERRIDE" | |
echo "NEO4J_DOCKER_CE_OVERRIDE=$NEO4J_DOCKER_CE_OVERRIDE" >> "$GITHUB_ENV" | |
echo "Found NEO4J_DOCKER_CE_OVERRIDE=$NEO4J_DOCKER_CE_OVERRIDE" | |
echo "Current branch BRANCH_NAME=$BRANCH_NAME" | |
echo "Current branch RELEASE_BRANCH_NAME=$RELEASE_BRANCH_NAME" | |
- name: Compile Java | |
run: | | |
chmod +x gradlew | |
./gradlew --no-daemon --info -Pneo4jVersionOverride=$NEO4JVERSION --init-script init.gradle clean | |
# Initializes the CodeQL tools for scanning. | |
- name: Initialize CodeQL | |
uses: github/codeql-action/[email protected] | |
with: | |
languages: ${{ matrix.language }} | |
- name: Compile | |
run: ./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION compileJava compileTestJava | |
- name: Perform CodeQL Analysis | |
uses: github/codeql-action/[email protected] | |
with: | |
category: "/language:${{matrix.language}}" | |
tests: | |
strategy: | |
fail-fast: false | |
matrix: | |
project: [ 'extended', 'extended-it' ] | |
runs-on: ubuntu-latest | |
steps: | |
- name: Set RELEASE_BRANCH_NAME based on branch name | |
run: | | |
if [[ "$BRANCH_NAME" =~ [0-9]{4}\.(0[1-9]|1[0-2]) || "$BRANCH_NAME" =~ ^5\.[0-9]+$ ]]; then | |
echo "RELEASE_BRANCH_NAME=true" >> $GITHUB_ENV | |
else | |
echo "RELEASE_BRANCH_NAME=false" >> $GITHUB_ENV | |
fi | |
- name: Configure AWS CLI | |
uses: aws-actions/configure-aws-credentials@v2 | |
with: | |
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }} | |
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }} | |
aws-region: eu-west-1 | |
- name: Configure CodeArtifact Authentication Token | |
run: | | |
CODEARTIFACT_TOKEN=`aws codeartifact get-authorization-token --domain build-service-live --domain-owner ${{ secrets.AWS_ACCOUNT_ID }} --query authorizationToken --output text` | |
echo "::add-mask::$CODEARTIFACT_TOKEN" | |
echo "CODEARTIFACT_TOKEN=$CODEARTIFACT_TOKEN" >> "$GITHUB_ENV" | |
- name: Login in to AWS ECR | |
run: | | |
aws ecr get-login-password --region eu-west-1 | docker login --username AWS --password-stdin $ECR_NEO4J_DOCKER_URL | |
- uses: actions/checkout@v2 | |
- name: Set up JDK 21 | |
uses: actions/setup-java@v2 | |
with: | |
java-version: '21' | |
distribution: 'temurin' | |
- uses: actions/cache@v2 | |
with: | |
path: | | |
~/.gradle/caches | |
~/.gradle/wrapper | |
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }} | |
- name: Determine latest neo4j CI version and docker images | |
run: | | |
neo4j_version_base=$(grep -e "neo4jVersion = .*" build.gradle | cut -d '=' -f 2 | tr -d \'\" | tr -d ' ') | |
echo "neo4j_version_base=$neo4j_version_base" | |
NEO4JVERSION=`aws codeartifact list-package-versions --domain build-service-live --domain-owner ${{ secrets.AWS_ACCOUNT_ID }} --repository ci-live --format maven --namespace org.neo4j --package neo4j --sort-by PUBLISHED_TIME --query "versions[?starts_with(version,'$neo4j_version_base')] | [0].version" | tr -d '" '` | |
echo "NEO4JVERSION=$NEO4JVERSION" >> "$GITHUB_ENV" | |
echo "Found NEO4JVERSION=$NEO4JVERSION" | |
if [[ $RELEASE_BRANCH_NAME ]]; then | |
NEO4J_DOCKER_EE_OVERRIDE="neo4j:$neo4j_version_base-enterprise" | |
NEO4J_DOCKER_CE_OVERRIDE="neo4j:$neo4j_version_base" | |
else | |
NEO4J_DOCKER_CE_OVERRIDE="$ECR_NEO4J_DOCKER_URL/build-service/neo4j:$neo4j_version_base-community-debian-nightly" | |
NEO4J_DOCKER_EE_OVERRIDE="$ECR_NEO4J_DOCKER_URL/build-service/neo4j:$neo4j_version_base-enterprise-debian-nightly" | |
fi | |
echo "NEO4J_DOCKER_EE_OVERRIDE=$NEO4J_DOCKER_EE_OVERRIDE" >> "$GITHUB_ENV" | |
echo "Found NEO4J_DOCKER_EE_OVERRIDE=$NEO4J_DOCKER_EE_OVERRIDE" | |
echo "NEO4J_DOCKER_CE_OVERRIDE=$NEO4J_DOCKER_CE_OVERRIDE" >> "$GITHUB_ENV" | |
echo "Found NEO4J_DOCKER_CE_OVERRIDE=$NEO4J_DOCKER_CE_OVERRIDE" | |
echo "Current branch BRANCH_NAME=$BRANCH_NAME" | |
echo "Current branch RELEASE_BRANCH_NAME=$RELEASE_BRANCH_NAME" | |
- name: Init gradle | |
run: | | |
chmod +x gradlew | |
./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION -Pneo4jDockerEeOverride=$NEO4J_DOCKER_EE_OVERRIDE -Pneo4jDockerCeOverride=$NEO4J_DOCKER_CE_OVERRIDE --init-script init.gradle | |
- name: Run ${{ matrix.project }} tests | |
uses: ./.github/actions/test-gradle-project | |
with: | |
project-name: ${{ matrix.project }} |