Skip to content

Commit

Permalink
De-ignore and solve failing docker tests in 5.23 (#4174)
Browse files Browse the repository at this point in the history
* Revert "Provisionally ignored failing docker tests in 5.20 (#4085)"

This reverts commit 05bb7ff.

* update gradle version and syntax

* added empty CODEARTIFACT_DOWNLOAD_URL

* add codeartifact references

* added gradle prints

* removed teamcity-repository.gradle

* try restoring gradle version

* restored ci.yaml like dev one

* changed maven repo to codeartifact_url

* try upgrading version

* [NOID] Improving AWS cli call to retrieve latest neo4j_version from CodeArtifact

* restored neo4j version

* restored ci.yaml like dev one

* try changing NEO4J_VERSION_CI to NEO4JVERSION

---------

Co-authored-by: Omar Ahmad <[email protected]>
  • Loading branch information
vga91 and omar952 authored Aug 30, 2024
1 parent c813781 commit de44ba7
Show file tree
Hide file tree
Showing 7 changed files with 76 additions and 20 deletions.
4 changes: 2 additions & 2 deletions .github/actions/test-gradle-project/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -12,10 +12,10 @@ runs:
- uses: ./.github/actions/setup-gradle-cache
- name: Run compile tests
shell: bash
run: ./gradlew :${{inputs.project-name}}:compileJava :${{inputs.project-name}}:compileTestJava
run: ./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION :${{inputs.project-name}}:compileJava :${{inputs.project-name}}:compileTestJava
- name: Run tests
shell: bash
run: ./gradlew :${{inputs.project-name}}:check --parallel
run: ./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION :${{inputs.project-name}}:check --parallel
- name: Archive test results
uses: actions/upload-artifact@v2
if: always()
Expand Down
54 changes: 48 additions & 6 deletions .github/workflows/CI.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -7,14 +7,15 @@ on:
branches: [ "5.23" ]

env:
CODEARTIFACT_DOWNLOAD_URL: ${{ secrets.CODEARTIFACT_DOWNLOAD_URL }}
CODEARTIFACT_USERNAME: ${{ secrets.CODEARTIFACT_USERNAME }}
DOCKER_ENTERPRISE_URL: ${{ secrets.DOCKER_ENTERPRISE_DEV_URL }}
DOCKER_COMMUNITY_URL: ${{ secrets.DOCKER_COMMUNITY_DEV_URL }}
TEAMCITY_DEV_URL: ${{ secrets.TEAMCITY_DEV_URL }}
TEAMCITY_USER: ${{ secrets.TEAMCITY_USER }}
TEAMCITY_PASSWORD: ${{ secrets.TEAMCITY_PASSWORD }}
ENTERPRISE_TAR: enterprise-docker.tar
COMMUNITY_TAR: community-docker.tar


jobs:
code-ql:
Expand All @@ -28,23 +29,43 @@ jobs:
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 latest neo4j CI version
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 NEO4j_VERSION_CI=$NEO4JVERSION"
- name: Compile Java
run: |
chmod +x gradlew
./gradlew --no-daemon --init-script init.gradle clean
./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 }}

# Autobuild attempts to build any compiled languages
- name: Autobuild
uses: github/codeql-action/autobuild@v2
- name: Compile
run: ./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION compileJava compileTestJava

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v2
Expand All @@ -58,6 +79,19 @@ jobs:
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
Expand All @@ -70,11 +104,19 @@ jobs:
~/.gradle/caches
~/.gradle/wrapper
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle*', '**/gradle-wrapper.properties') }}

- name: Determine latest neo4j CI version
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 NEO4j_VERSION_CI=$NEO4JVERSION"
- name: Init gradle
run: |
chmod +x gradlew
./gradlew --init-script init.gradle
./gradlew --info -Pneo4jVersionOverride=$NEO4JVERSION --init-script init.gradle
- name: Run ${{ matrix.project }} tests
uses: ./.github/actions/test-gradle-project
Expand Down
24 changes: 22 additions & 2 deletions build.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,17 @@ repositories {
/*maven { // this contains the neo4j 4.0.0-beta jars
url "https://neo4j.bintray.com/community/"
}*/
mavenCentral()
if (System.getenv("CODEARTIFACT_DOWNLOAD_URL") ?: "" != "") {
maven {
url System.getenv('CODEARTIFACT_DOWNLOAD_URL')
credentials {
username System.getenv('CODEARTIFACT_USERNAME')
password System.getenv('CODEARTIFACT_TOKEN')
}
}
} else {
mavenCentral()
}
maven {
url "https://repo.gradle.org/gradle/libs-releases"
}
Expand All @@ -43,7 +53,17 @@ subprojects {
/*maven { // this contains the neo4j 4.0.0-beta jars
url "https://neo4j.bintray.com/community/"
}*/
mavenCentral()
if (System.getenv("CODEARTIFACT_DOWNLOAD_URL") ?: "" != "") {
maven {
url System.getenv('CODEARTIFACT_DOWNLOAD_URL')
credentials {
username System.getenv('CODEARTIFACT_USERNAME')
password System.getenv('CODEARTIFACT_TOKEN')
}
}
} else {
mavenCentral()
}
maven {
url "https://repo.gradle.org/gradle/libs-releases"
}
Expand Down
2 changes: 0 additions & 2 deletions extended-it/src/test/java/apoc/neo4j/docker/BoltTest.java
Original file line number Diff line number Diff line change
Expand Up @@ -15,7 +15,6 @@
import org.junit.Assume;
import org.junit.BeforeClass;
import org.junit.ClassRule;
import org.junit.Ignore;
import org.junit.Test;
import org.neo4j.driver.Session;
import org.neo4j.graphdb.Entity;
Expand Down Expand Up @@ -46,7 +45,6 @@
* @author AgileLARUS
* @since 29.08.17
*/
@Ignore
public class BoltTest {

public static String BOLT_URL;
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,6 @@

import apoc.util.Neo4jContainerExtension;
import apoc.util.TestContainerUtil;
import org.junit.Ignore;
import org.junit.Test;
import apoc.util.TestContainerUtil.ApocPackage;
import org.neo4j.driver.Record;
Expand All @@ -25,7 +24,6 @@
into a Neo4j instance without any startup issue.
If you don't have docker installed it will fail, and you can simply ignore it.
*/
@Ignore
public class CoreExtendedTest {
@Test
public void checkForCoreAndExtended() {
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,6 @@
import apoc.util.TestContainerUtil;
import apoc.util.TestContainerUtil.Neo4jVersion;
import org.apache.commons.io.FileUtils;
import org.junit.Ignore;
import org.junit.Test;
import org.neo4j.driver.Session;

Expand All @@ -30,7 +29,6 @@
/*
This test is just to verify if the APOC procedures and functions are correctly deployed into a Neo4j instance without any startup issue.
*/
@Ignore
public class StartupExtendedTest {
private static final String APOC_HELP_QUERY = "CALL apoc.help('') YIELD core, type, name WHERE core = $core and type = $type RETURN name";
private static final List<String> EXPECTED_EXTENDED_NAMES;
Expand Down
8 changes: 4 additions & 4 deletions teamcity-repository.gradle
Original file line number Diff line number Diff line change
Expand Up @@ -2,11 +2,11 @@ allprojects {
plugins.withType(JavaLibraryPlugin) {
repositories {
maven {
name = 'teamcity-neo4j-dev'
url = System.getenv('TEAMCITY_DEV_URL')
name = 'aws-codeartifact-repo'
url = System.getenv('CODEARTIFACT_DOWNLOAD_URL')
credentials {
username System.getenv('TEAMCITY_USER')
password System.getenv('TEAMCITY_PASSWORD')
username System.getenv('CODEARTIFACT_USERNAME')
password System.getenv('CODEARTIFACT_TOKEN')
}
authentication {
basic(BasicAuthentication)
Expand Down

0 comments on commit de44ba7

Please sign in to comment.