Skip to content

Commit 0f3cba4

Browse files
committed
merged develop
2 parents 13a9f62 + c4379a0 commit 0f3cba4

468 files changed

Lines changed: 20341 additions & 3601 deletions

File tree

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

.env

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
APP_IMAGE=gdcc/dataverse:unstable
22
POSTGRES_VERSION=17
33
DATAVERSE_DB_USER=dataverse
4-
SOLR_VERSION=9.3.0
5-
SKIP_DEPLOY=0
4+
SOLR_VERSION=9.8.0
5+
SKIP_DEPLOY=0

.github/workflows/codeql.yml

Lines changed: 104 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,104 @@
1+
# For most projects, this workflow file will not need changing; you simply need
2+
# to commit it to your repository.
3+
#
4+
# You may wish to alter this file to override the set of languages analyzed,
5+
# or to provide custom queries or build logic.
6+
#
7+
# ******** NOTE ********
8+
# We have attempted to detect the languages in your repository. Please check
9+
# the `language` matrix defined below to confirm you have the correct set of
10+
# supported CodeQL languages.
11+
#
12+
name: "CodeQL Advanced"
13+
14+
on:
15+
push:
16+
branches: [ "develop", "master" ]
17+
pull_request:
18+
branches: [ "develop", "master" ]
19+
schedule:
20+
- cron: '30 6 * * 4'
21+
22+
jobs:
23+
analyze:
24+
name: Analyze (${{ matrix.language }})
25+
# Runner size impacts CodeQL analysis time. To learn more, please see:
26+
# - https://gh.io/recommended-hardware-resources-for-running-codeql
27+
# - https://gh.io/supported-runners-and-hardware-resources
28+
# - https://gh.io/using-larger-runners (GitHub.com only)
29+
# Consider using larger runners or machines with greater resources for possible analysis time improvements.
30+
runs-on: ${{ (matrix.language == 'swift' && 'macos-latest') || 'ubuntu-latest' }}
31+
permissions:
32+
# required for all workflows
33+
security-events: write
34+
35+
# required to fetch internal or private CodeQL packs
36+
packages: read
37+
38+
# only required for workflows in private repositories
39+
actions: read
40+
contents: read
41+
42+
strategy:
43+
fail-fast: false
44+
matrix:
45+
include:
46+
- language: actions
47+
build-mode: none
48+
- language: java-kotlin
49+
build-mode: none # This mode only analyzes Java. Set this to 'autobuild' or 'manual' to analyze Kotlin too.
50+
- language: javascript-typescript
51+
build-mode: none
52+
- language: python
53+
build-mode: none
54+
# CodeQL supports the following values keywords for 'language': 'actions', 'c-cpp', 'csharp', 'go', 'java-kotlin', 'javascript-typescript', 'python', 'ruby', 'swift'
55+
# Use `c-cpp` to analyze code written in C, C++ or both
56+
# Use 'java-kotlin' to analyze code written in Java, Kotlin or both
57+
# Use 'javascript-typescript' to analyze code written in JavaScript, TypeScript or both
58+
# To learn more about changing the languages that are analyzed or customizing the build mode for your analysis,
59+
# see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/customizing-your-advanced-setup-for-code-scanning.
60+
# If you are analyzing a compiled language, you can modify the 'build-mode' for that language to customize how
61+
# your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages
62+
steps:
63+
- name: Checkout repository
64+
uses: actions/checkout@v4
65+
66+
# Add any setup steps before running the `github/codeql-action/init` action.
67+
# This includes steps like installing compilers or runtimes (`actions/setup-node`
68+
# or others). This is typically only required for manual builds.
69+
# - name: Setup runtime (example)
70+
# uses: actions/setup-example@v1
71+
72+
# Initializes the CodeQL tools for scanning.
73+
- name: Initialize CodeQL
74+
uses: github/codeql-action/init@v3
75+
with:
76+
languages: ${{ matrix.language }}
77+
build-mode: ${{ matrix.build-mode }}
78+
# If you wish to specify custom queries, you can do so here or in a config file.
79+
# By default, queries listed here will override any specified in a config file.
80+
# Prefix the list here with "+" to use these queries and those in the config file.
81+
82+
# For more details on CodeQL's query packs, refer to: https://docs.github.com/en/code-security/code-scanning/automatically-scanning-your-code-for-vulnerabilities-and-errors/configuring-code-scanning#using-queries-in-ql-packs
83+
# queries: security-extended,security-and-quality
84+
85+
# If the analyze step fails for one of the languages you are analyzing with
86+
# "We were unable to automatically build your code", modify the matrix above
87+
# to set the build mode to "manual" for that language. Then modify this step
88+
# to build your code.
89+
# ℹ️ Command-line programs to run using the OS shell.
90+
# 📚 See https://docs.github.com/en/actions/using-workflows/workflow-syntax-for-github-actions#jobsjob_idstepsrun
91+
- if: matrix.build-mode == 'manual'
92+
shell: bash
93+
run: |
94+
echo 'If you are using a "manual" build mode for one or more of the' \
95+
'languages you are analyzing, replace this with the commands to build' \
96+
'your code, for example:'
97+
echo ' make bootstrap'
98+
echo ' make release'
99+
exit 1
100+
101+
- name: Perform CodeQL Analysis
102+
uses: github/codeql-action/analyze@v3
103+
with:
104+
category: "/language:${{matrix.language}}"

.github/workflows/container_app_pr.yml

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -35,14 +35,14 @@ jobs:
3535

3636
# Note: Accessing, pushing tags etc. to GHCR will only succeed in upstream because secrets.
3737
- name: Login to Github Container Registry
38-
uses: docker/login-action@v2
38+
uses: docker/login-action@v3
3939
with:
4040
registry: ghcr.io
4141
username: ${{ secrets.GHCR_USERNAME }}
4242
password: ${{ secrets.GHCR_TOKEN }}
4343

4444
- name: Set up QEMU for multi-arch builds
45-
uses: docker/setup-qemu-action@v2
45+
uses: docker/setup-qemu-action@v3
4646

4747
# Get the image tag from either the command or default to branch name (Not used for now)
4848
#- name: Get the target tag name

.github/workflows/container_app_push.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -126,20 +126,20 @@ jobs:
126126
# Depending on context, we push to different targets. Login accordingly.
127127
- if: github.event_name != 'pull_request'
128128
name: Log in to Docker Hub registry
129-
uses: docker/login-action@v2
129+
uses: docker/login-action@v3
130130
with:
131131
username: ${{ secrets.DOCKERHUB_USERNAME }}
132132
password: ${{ secrets.DOCKERHUB_TOKEN }}
133133
- if: ${{ github.event_name == 'pull_request' }}
134134
name: Login to Github Container Registry
135-
uses: docker/login-action@v2
135+
uses: docker/login-action@v3
136136
with:
137137
registry: ghcr.io
138138
username: ${{ secrets.GHCR_USERNAME }}
139139
password: ${{ secrets.GHCR_TOKEN }}
140140

141141
- name: Set up QEMU for multi-arch builds
142-
uses: docker/setup-qemu-action@v2
142+
uses: docker/setup-qemu-action@v3
143143

144144
- name: Re-set image tag based on branch (if master)
145145
if: ${{ github.ref_name == 'master' }}

.github/workflows/container_base_push.yml

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -53,7 +53,7 @@ jobs:
5353
# Configure a remote ARM64 build host in addition to the local AMD64 in two steps.
5454
- name: Setup SSH agent
5555
if: ${{ github.event_name != 'schedule' }}
56-
uses: webfactory/ssh-agent@v0.9.0
56+
uses: webfactory/ssh-agent@v0.9.1
5757
with:
5858
ssh-private-key: ${{ secrets.BUILDER_ARM64_SSH_PRIVATE_KEY }}
5959
- name: Provide the known hosts key and the builder config

.github/workflows/copy_labels.yml

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,19 @@
1+
name: Copy labels from issue to pull request
2+
3+
on:
4+
pull_request:
5+
types: [opened]
6+
7+
jobs:
8+
copy-labels:
9+
# Avoid being triggered by forks
10+
if: "! github.event.pull_request.head.repo.fork && github.actor != 'dependabot[bot]'"
11+
permissions:
12+
pull-requests: write
13+
runs-on: ubuntu-latest
14+
name: Copy labels from linked issues
15+
steps:
16+
- name: copy-labels
17+
uses: michalvankodev/copy-issue-labels@v1.3.0
18+
with:
19+
repo-token: ${{ secrets.GITHUB_TOKEN }}

.github/workflows/deploy_beta_testing.yml

Lines changed: 8 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -43,6 +43,7 @@ jobs:
4343

4444
deploy-to-payara:
4545
needs: build
46+
if: ${{ github.repository_owner == 'IQSS' }}
4647
runs-on: ubuntu-latest
4748

4849
steps:
@@ -68,7 +69,7 @@ jobs:
6869
overwrite: true
6970

7071
- name: Execute payara war deployment remotely
71-
uses: appleboy/ssh-action@v1.0.0
72+
uses: appleboy/ssh-action@v1.2.2
7273
env:
7374
INPUT_WAR_FILE: ${{ env.war_file }}
7475
with:
@@ -80,10 +81,10 @@ jobs:
8081
APPLICATION_NAME=dataverse-backend
8182
ASADMIN='/usr/local/payara6/bin/asadmin --user admin'
8283
$ASADMIN undeploy $APPLICATION_NAME
83-
$ASADMIN stop-domain
84-
rm -rf /usr/local/payara6/glassfish/domains/domain1/generated
85-
rm -rf /usr/local/payara6/glassfish/domains/domain1/osgi-cache
86-
$ASADMIN start-domain
84+
#$ASADMIN stop-domain
85+
#rm -rf /usr/local/payara6/glassfish/domains/domain1/generated
86+
#rm -rf /usr/local/payara6/glassfish/domains/domain1/osgi-cache
87+
#$ASADMIN start-domain
8788
$ASADMIN deploy --name $APPLICATION_NAME $INPUT_WAR_FILE
88-
$ASADMIN stop-domain
89-
$ASADMIN start-domain
89+
#$ASADMIN stop-domain
90+
#$ASADMIN start-domain

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -61,6 +61,7 @@ src/main/webapp/resources/images/cc0.png.thumb140
6161
src/main/webapp/resources/images/dataverseproject.png.thumb140
6262

6363
# Docker development volumes
64+
/conf/keycloak/docker-dev-volumes
6465
/docker-dev-volumes
6566
/.vs
6667

conf/keycloak/.env

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,5 @@
1+
APP_IMAGE=gdcc/dataverse:unstable
2+
POSTGRES_VERSION=17
3+
DATAVERSE_DB_USER=dataverse
4+
SOLR_VERSION=9.8.0
5+
SKIP_DEPLOY=0

conf/keycloak/Dockerfile

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
# ------------------------------------------
2+
# Stage 1: Build SPI with Maven
3+
# ------------------------------------------
4+
FROM maven:3.9.5-eclipse-temurin-17 AS builder
5+
6+
WORKDIR /app
7+
8+
# Copy SPI source code
9+
COPY ./builtin-users-spi /app
10+
11+
# Build the SPI JAR
12+
RUN mvn clean package
13+
14+
# ------------------------------------------
15+
# Stage 2: Build Keycloak Image
16+
# ------------------------------------------
17+
FROM quay.io/keycloak/keycloak:26.1.4
18+
19+
# Add the Oracle JDBC jars
20+
ARG ORACLE_JDBC_VERSION=23.7.0.25.01
21+
ADD --chown=keycloak:keycloak https://repo1.maven.org/maven2/com/oracle/database/jdbc/ojdbc11/${ORACLE_JDBC_VERSION}/ojdbc11-${ORACLE_JDBC_VERSION}.jar /opt/keycloak/providers/ojdbc11.jar
22+
ADD --chown=keycloak:keycloak https://repo1.maven.org/maven2/com/oracle/database/nls/orai18n/${ORACLE_JDBC_VERSION}/orai18n-${ORACLE_JDBC_VERSION}.jar /opt/keycloak/providers/orai18n.jar
23+
24+
# Health build parameter
25+
ENV KC_HEALTH_ENABLED=true
26+
27+
# Copy SPI JAR from builder stage
28+
COPY --from=builder /app/target/keycloak-dv-builtin-users-authenticator-1.0-SNAPSHOT.jar /opt/keycloak/providers/
29+
30+
# Copy additional configurations
31+
COPY ./builtin-users-spi/conf/quarkus.properties /opt/keycloak/conf/
32+
COPY ./test-realm.json /opt/keycloak/data/import/
33+
34+
# Set the Keycloak command
35+
ENTRYPOINT ["/opt/keycloak/bin/kc.sh"]
36+
CMD ["start-dev", "--import-realm", "--http-port=8090"]
37+
38+
# Expose port 8090
39+
EXPOSE 8090

0 commit comments

Comments
 (0)