Skip to content

Updates for project RODA and language pt_PT (#3265) #845

Updates for project RODA and language pt_PT (#3265)

Updates for project RODA and language pt_PT (#3265) #845

Workflow file for this run

name: "Development"
on:
push:
branches:
- "development"
jobs:
build:
runs-on: ubuntu-latest
env:
MAVEN_CLI_OPTS: "--batch-mode --errors --fail-at-end --show-version"
services:
zookeeper:
image: zookeeper:3.9.1-jre-17
ports:
- 2181:2181
solr:
image: solr:9
ports:
- 8983:8983
env:
ZK_HOST: zookeeper:2181
options: -e cloud
mailhog:
image: mailhog/mailhog:v1.0.1
ports:
- 1025:1025
openldap:
image: docker.io/bitnami/openldap:2.6
ports:
- 1389:1389
- 1636:1636
env:
BITNAMI_DEBUG: true
LDAP_ROOT: dc=roda,dc=org
LDAP_SKIP_DEFAULT_TREE: yes
LDAP_ADMIN_USERNAME: admin
LDAP_ADMIN_PASSWORD: roda
LDAP_EXTRA_SCHEMAS: cosine,inetorgperson,nis,pbkdf2
steps:
- uses: actions/checkout@v4
with:
fetch-depth: 0
- name: Set up JDK 21
uses: actions/setup-java@v4
with:
java-version: 21
distribution: "temurin"
- name: Set up Maven
uses: hb0730/maven-action@v1
with:
maven-version: 3.9.6
- name: Cache
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: ${{ runner.os }}-maven-
- name: Set up GO
uses: actions/setup-go@v5
with:
go-version: '^1.22.1'
check-latest: true
- name: Install siegfried
run: |
go install github.com/richardlehane/siegfried/cmd/sf@latest
sf -update
- name: Install clamdscan mock
run: |
sudo cp .github/workflows/bin/clamscan /usr/bin/clamscan
sudo cp .github/workflows/bin/clamscan /usr/bin/clamdscan
sudo chmod a+rx /usr/bin/clamscan /usr/bin/clamdscan
- name: Run tests & install
run:
mvn $MAVEN_CLI_OPTS -Dtestng.groups="travis" -Denforcer.skip=true clean org.jacoco:jacoco-maven-plugin:prepare-agent install
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
RODA_CORE_SOLR_TYPE: CLOUD
RODA_CORE_SOLR_CLOUD_URLS: localhost:2181
- name: Deploy to GitHub packages
run: mvn $MAVEN_CLI_OPTS clean deploy -Dmaven.test.skip=true -Pcore
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
- name: Copy target to docker context
run: |
mkdir -p docker/target
cp -r roda-ui/roda-wui/target/roda-wui-$(mvn help:evaluate -Dexpression=project.version -q -DforceStdout).war docker/target
- name: Set up Docker Buildx
uses: docker/setup-buildx-action@v3
- name: Login to GitHub Container Registry
uses: docker/login-action@v3
with:
registry: ghcr.io
username: ${{ github.actor }}
password: ${{ secrets.GITHUB_TOKEN }}
- name: Login to DockerHub container registry
uses: docker/login-action@v3
with:
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_PASSWORD }}
- name: Build docker image
uses: docker/build-push-action@v6
with:
push: true
context: docker
tags: |
ghcr.io/keeps/roda:development
keeps/roda:development
sbom: true
provenance: mode=max
- name: Trigger KEEPS GitLab CI/CD
run: |
curl -X POST \
--fail \
-F token=${{ secrets.GITLAB_RODA_DEV_TRIGGER_TOKEN }} \
-F variables[DOCKER_TAG]=development \
-F ref=development \
${{ secrets.GITLAB_RODA_DEV_TRIGGER }}