Skip to content

GitHub action fixes timeout error #5793

GitHub action fixes timeout error

GitHub action fixes timeout error #5793

Workflow file for this run

name: CI
on:
push:
branches: [ "dev" ]
pull_request:
branches: [ "dev" ]
env:
BRANCH_NAME: ${{ github.head_ref || github.ref_name }}
CODEARTIFACT_URL: ${{ secrets.CODEARTIFACT_URL }}
CODEARTIFACT_USERNAME: ${{ secrets.CODEARTIFACT_USERNAME }}
ECR_NEO4J_DOCKER_URL: ${{ secrets.ECR_NEO4J_DOCKER_URL }}
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: 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"
- uses: actions/checkout@v3
- uses: ./.github/actions/setup-jdk
- uses: ./.github/actions/setup-gradle-cache
- name: Determine Remote Maven Repository, Neo4j Version and Neo4j 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"
echo "Analyzing current branch BRANCH_NAME=$BRANCH_NAME"
if [[ $BRANCH_NAME =~ ^5.[0-9]+$ ]]; then
NEO4JVERSION="$neo4j_version_base"
else
NEO4JVERSION="$neo4j_version_base-SNAPSHOT"
CODEARTIFACT_DOWNLOAD_URL="$CODEARTIFACT_URL/ci-live"
echo "CODEARTIFACT_DOWNLOAD_URL=$CODEARTIFACT_DOWNLOAD_URL"
echo "CODEARTIFACT_DOWNLOAD_URL=$CODEARTIFACT_DOWNLOAD_URL" >> "$GITHUB_ENV"
fi
echo "NEO4JVERSION=$NEO4JVERSION"
echo "NEO4JVERSION=$NEO4JVERSION" >> "$GITHUB_ENV"
- 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/init@v2
with:
languages: ${{ matrix.language }}
- name: Compile
run: ./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION compileJava compileTestJava
- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
with:
category: "/language:${{matrix.language}}"
tests:
strategy:
fail-fast: false
matrix:
project: [ 'extended', 'extended-it' ]
runs-on: ubuntu-latest
steps:
- 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"
- uses: actions/checkout@v2
- name: Set up JDK 17
uses: actions/setup-java@v2
with:
java-version: '17.0.8'
distribution: 'temurin'
- uses: actions/cache@v2
with:
path: |
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}
- name: Determine Remote Maven Repository, Neo4j Version and Neo4j 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"
echo "Analyzing current branch BRANCH_NAME=$BRANCH_NAME"
if [[ $BRANCH_NAME =~ ^5.[0-9]+$ ]]; then
NEO4JVERSION="$neo4j_version_base"
NEO4J_ENTERPRISE_IMAGE="neo4j:$NEO4JVERSION-enterprise"
NEO4J_COMMUNITY_IMAGE="neo4j:$NEO4JVERSION-community"
echo "DOCKER_REMOTE=Dockerhub" >> "$GITHUB_ENV"
else
NEO4JVERSION="$neo4j_version_base-SNAPSHOT"
NEO4J_ENTERPRISE_IMAGE="${{ secrets.ECR_NEO4J_DOCKER_URL }}/build-service/neo4j:$neo4j_version_base-enterprise-debian-nightly"
NEO4J_COMMUNITY_IMAGE="${{ secrets.ECR_NEO4J_DOCKER_URL }}/build-service/neo4j:$neo4j_version_base-community-debian-nightly"
echo "DOCKER_REMOTE=ECR" >> "$GITHUB_ENV"
CODEARTIFACT_DOWNLOAD_URL="$CODEARTIFACT_URL/ci-live"
echo "CODEARTIFACT_DOWNLOAD_URL=$CODEARTIFACT_DOWNLOAD_URL"
echo "CODEARTIFACT_DOWNLOAD_URL=$CODEARTIFACT_DOWNLOAD_URL" >> "$GITHUB_ENV"
fi
echo "NEO4JVERSION=$NEO4JVERSION"
echo "NEO4JVERSION=$NEO4JVERSION" >> "$GITHUB_ENV"
echo "NEO4J_ENTERPRISE_IMAGE=$NEO4J_ENTERPRISE_IMAGE"
echo "NEO4J_ENTERPRISE_IMAGE=$NEO4J_ENTERPRISE_IMAGE" >> "$GITHUB_ENV"
echo "NEO4J_COMMUNITY_IMAGE=$NEO4J_COMMUNITY_IMAGE"
echo "NEO4J_COMMUNITY_IMAGE=$NEO4J_COMMUNITY_IMAGE" >> "$GITHUB_ENV"
- name: Login to ECR
if: env.DOCKER_REMOTE == 'ECR'
uses: docker/login-action@v3
with:
registry: ${{ secrets.ECR_NEO4J_DOCKER_URL }}
username: ${{ secrets.AWS_ACCESS_KEY_ID }}
password: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
- name: Init gradle
run: |
chmod +x gradlew
./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION --init-script init.gradle
- name: Run ${{ matrix.project }} tests
uses: ./.github/actions/test-gradle-project
with:
project-name: ${{ matrix.project }}