Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
82 commits
Select commit Hold shift + click to select a range
f79e9b0
implement query of sample-type-connections
wow-such-code Mar 7, 2024
939aedf
Merge branch 'development' into feature/allow-query-of-hierarchy
wow-such-code Mar 7, 2024
1f00c17
update wfs
wow-such-code Mar 7, 2024
ac10137
adress review
wow-such-code Mar 8, 2024
16cc00b
add more user friendly reporting
wow-such-code Mar 11, 2024
1e18f77
Merge pull request #1 from qbicsoftware/feature/allow-query-of-hierarchy
wow-such-code Mar 12, 2024
757a4c8
fix codeql and deployment
wow-such-code Mar 12, 2024
3897229
Merge pull request #2 from qbicsoftware/fix/fix-workflows
wow-such-code Mar 12, 2024
7656e04
use openbis-internal wrapper class
wow-such-code Mar 24, 2024
2f525bd
add data search and upload
wow-such-code Jun 27, 2024
e56f4b8
round 1 of review changes
wow-such-code Jun 28, 2024
db4d888
test and remove todos
wow-such-code Jun 28, 2024
3a99d0d
remaining fixes
wow-such-code Jun 28, 2024
68a1e95
Merge pull request #4 from qbicsoftware/feature/data-options
wow-such-code Jun 28, 2024
a3b0572
petab model
wow-such-code Jul 15, 2024
7c47eb3
statistics feature
wow-such-code Jul 15, 2024
4c731eb
statistics feature
wow-such-code Jul 15, 2024
a9f9e53
fix issues introduced by git cherry pick
wow-such-code Jul 15, 2024
5f773a1
add missing class
wow-such-code Jul 16, 2024
46d461e
Merge pull request #5 from qbicsoftware/feature/statistics
wow-such-code Jul 16, 2024
591f876
Merge branch 'development' into feature/petab-basic-features
wow-such-code Jul 17, 2024
a9bca1a
add petab model, implement simple use cases
wow-such-code Jul 23, 2024
dbcbfb7
remove debugging
wow-such-code Jul 23, 2024
62d5ef5
cleanup unused code
wow-such-code Jul 24, 2024
f906e75
disable parents parameter, it is read from yaml now
wow-such-code Jul 24, 2024
573eb3c
implement requested changes
wow-such-code Jul 24, 2024
c8b0566
better handling of dataset code parsing
wow-such-code Jul 24, 2024
431edfb
better code
wow-such-code Jul 24, 2024
bcd2619
better logging
wow-such-code Jul 24, 2024
f68bb7f
Merge pull request #6 from qbicsoftware/feature/petab-basic-features
wow-such-code Jul 24, 2024
296c981
allow dataset connection to sample, improve error handling
wow-such-code Aug 15, 2024
eaf8d7e
Update src/main/java/life/qbic/io/commandline/UploadDatasetCommand.java
wow-such-code Sep 2, 2024
cb3933d
Update src/main/java/life/qbic/io/commandline/UploadDatasetCommand.java
wow-such-code Sep 2, 2024
7b20a9c
Merge pull request #7 from qbicsoftware/petab-feedback
wow-such-code Sep 2, 2024
4d28df9
wip
wow-such-code Sep 26, 2024
c41c6aa
structure
wow-such-code Oct 7, 2024
3ec62fd
implement first seek use cases
wow-such-code Oct 7, 2024
a87fed8
small fixes and features
wow-such-code Oct 7, 2024
bd16a56
Merge pull request #8 from qbicsoftware/feature/transfer-to-seek
wow-such-code Oct 7, 2024
4ce251a
several new features and fixes
wow-such-code Oct 11, 2024
b9a6f20
Merge pull request #9 from qbicsoftware/feature/update-seek-node
wow-such-code Oct 11, 2024
e2c91a5
fix config name
wow-such-code Oct 11, 2024
052edf7
Merge pull request #10 from qbicsoftware/fix/config-file-name
wow-such-code Oct 11, 2024
f86c027
fix issue caused by mandatory assaytype
wow-such-code Oct 14, 2024
a6b8146
enable search for samples and identifiers
wow-such-code Oct 15, 2024
ba5c728
make assay type mandatory again
wow-such-code Oct 15, 2024
c324b3c
fix check for config and command line parameters
wow-such-code Oct 15, 2024
19d580a
add checks for assay type translation, enable translation without exp…
wow-such-code Oct 15, 2024
a9446b2
fix recursion for list of parent properties
wow-such-code Oct 15, 2024
983ff91
add dataset type as optional parameter
wow-such-code Oct 15, 2024
2cbf1e6
fix issue where config was not read
wow-such-code Oct 15, 2024
9bdf010
add optional parameter for dataset type
wow-such-code Oct 15, 2024
27eac03
fix issue where config was not read
wow-such-code Oct 15, 2024
7058775
add test logging of patient id property
wow-such-code Oct 15, 2024
dd3000a
add partial functionality to add and update samples and assets withou…
wow-such-code Oct 15, 2024
e00052d
Merge pull request #11 from qbicsoftware/feature/sample-and-dataset-t…
wow-such-code Oct 15, 2024
fc9b79c
Create README.md
wow-such-code Oct 21, 2024
b6ac491
always transfer experiment with samples
wow-such-code Oct 21, 2024
91b3b53
allow for slightly more variable metaInformation.yaml names
wow-such-code Oct 21, 2024
a1382c4
add description for each command
wow-such-code Oct 21, 2024
8305745
Merge pull request #13 from qbicsoftware/feature/sample-and-dataset-t…
wow-such-code Oct 21, 2024
34d8c09
Merge branch 'development' into chore/readme
wow-such-code Oct 21, 2024
e1e663e
provide documentation for several commands
wow-such-code Oct 21, 2024
dfd85fb
Merge pull request #12 from qbicsoftware/chore/readme
wow-such-code Oct 21, 2024
9b59e2c
update readme to latest features
wow-such-code Oct 21, 2024
6365958
make study mandatory
wow-such-code Oct 21, 2024
7e712fa
Merge pull request #14 from qbicsoftware/chore/readme
wow-such-code Oct 21, 2024
225af2c
fix addition of openbis ID if no keyword is part of yaml yet
wow-such-code Oct 21, 2024
b63c22e
clean up print
wow-such-code Oct 21, 2024
7de18ad
prepare for addition of link sample to store SEEK links
wow-such-code Oct 21, 2024
f8ec586
allow uploading petab to sample objects
wow-such-code Oct 21, 2024
c9447ab
spacing
wow-such-code Oct 21, 2024
4e48a4b
test and finish update method
wow-such-code Oct 21, 2024
e1c5c3d
add node type enum
wow-such-code Oct 21, 2024
e6b5e2d
explain EXTERNAL_LINK sample type
wow-such-code Oct 21, 2024
06c20f7
Merge pull request #15 from qbicsoftware/feature/feedback
wow-such-code Oct 21, 2024
42670a2
add ro-crate use case
wow-such-code Oct 23, 2024
d3085f6
improve readme
wow-such-code Oct 23, 2024
3421b1b
Merge pull request #16 from qbicsoftware/feature/feedback
wow-such-code Oct 23, 2024
d258d07
upate readme, rename property files, provide examples
wow-such-code Oct 30, 2024
1c55331
fix property file name
wow-such-code Oct 30, 2024
410ea76
Merge pull request #17 from qbicsoftware/chore/examples
wow-such-code Oct 30, 2024
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
14 changes: 14 additions & 0 deletions .github.settings.xml
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
<settings>
<servers>
<server>
<id>nexus-snapshots</id>
<username>${env.MAVEN_REPO_USERNAME}</username>
<password>${env.MAVEN_REPO_PASSWORD}</password>
</server>
<server>
<id>nexus-releases</id>
<username>${env.MAVEN_REPO_USERNAME}</username>
<password>${env.MAVEN_REPO_PASSWORD}</password>
</server>
</servers>
</settings>
1 change: 1 addition & 0 deletions .github/CODEOWNERS
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
* @qbicsoftware/itss
3 changes: 3 additions & 0 deletions .github/pr-labels.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,3 @@
feature: ['feature/*', 'feat/*']
fix: ['fix/*', 'hotfix']
chore: ['chore/*', 'documentation/*', 'docs/*', 'ci/*', 'refactor/*']
20 changes: 20 additions & 0 deletions .github/release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
changelog:
exclude:
labels:
- ignore-for-release
authors:
- JohnnyQ5
- github-actions
categories:
- title: New Features 🚀
labels:
- feature
- title: Bugfixes 🪲
labels:
- fix
- title: Documentation & CI 🪂
labels:
- chore
- title: Others 🧃
labels:
- "*"
29 changes: 29 additions & 0 deletions .github/workflows/build-package.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
name: Build Maven Package

on:
push:
branches:
- '**'
pull_request:
# The branches below must be a subset of the branches above
branches: [ main, master ]

jobs:
package:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
- name: Load local Maven repository cache
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Run mvn package
run: mvn -B package --file pom.xml
83 changes: 83 additions & 0 deletions .github/workflows/codeql-analysis.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
# For most projects, this workflow file will not need changing; you simply need
# to commit it to your repository.
#
# You may wish to alter this file to override the set of languages analyzed,
# or to provide custom queries or build logic.
#
# ******** NOTE ********
# We have attempted to detect the languages in your repository. Please check
# the `language` matrix defined below to confirm you have the correct set of
# supported CodeQL languages.
#
name: "CodeQL"

on:
push:
branches: [ main, master, development, release/*, hotfix/* ]
pull_request:
# The branches below must be a subset of the branches above
branches: [ main, master ]
schedule:
- cron: '21 1 * * 4'

jobs:
analyze:
runs-on: ubuntu-latest
permissions:
actions: read
contents: read
security-events: write

strategy:
fail-fast: false
matrix:
language: [ 'java' ]
# CodeQL supports [ 'cpp', 'csharp', 'go', 'java', 'javascript', 'python', 'ruby' ]
# Learn more about CodeQL language support at https://git.io/codeql-language-support

steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Set up JDK 11
uses: actions/setup-java@v4
with:
distribution: 'zulu'
java-version: '11'
settings-path: ${{ github.workspace }}

- name: Load local Maven repository cache
uses: actions/cache@v4
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-

# Initializes the CodeQL tools for scanning.
- name: Initialize CodeQL
uses: github/codeql-action/init@v3
with:
languages: ${{ matrix.language }}
# If you wish to specify custom queries, you can do so here or in a config file.
# By default, queries listed here will override any specified in a config file.
# Prefix the list here with "+" to use these queries and those in the config file.
# queries: ./path/to/local/query, your-org/your-repo/queries@main

# Autobuild attempts to build any compiled languages (C/C++, C#, or Java).
# If this step fails, then you should remove it and run the build manually (see below)
- name: Autobuild
uses: github/codeql-action/autobuild@v3

# ℹ️ Command-line programs to run using the OS shell.
# 📚 https://git.io/JvXDl

# ✏️ If the Autobuild fails above, remove it and uncomment the following three lines
# and modify them (or add more) to build your code if your project
# uses a compiled language

#- run: |
# make bootstrap
# make release

- name: Perform CodeQL Analysis
uses: github/codeql-action/analyze@v3
96 changes: 96 additions & 0 deletions .github/workflows/create-release.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,96 @@
name: Create Release

on:
workflow_dispatch:
inputs:
versionTag:
description: 'Version Tag (semantic version)'
required: true

jobs:
release:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
settings-path: ${{ github.workspace }}

- name: Load local Maven repository cache
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-

- name: Set up git
run: |
git config --global user.email "support@qbic.zendesk.com"
git config --global user.name "JohnnyQ5"

- name: Set version in Maven project
run: mvn versions:set -DnewVersion=${{ github.event.inputs.versionTag }}

- name: Build with Maven
run: mvn -B package --file pom.xml

- name: Create Release Notes
if: ${{ !startsWith(github.ref, 'refs/tags/')
&& !( contains(github.event.inputs.versionTag, 'alpha')
|| contains(github.event.inputs.versionTag, 'beta')
|| contains(github.event.inputs.versionTag, 'rc')) }}
uses: actions/github-script@v4.0.2
with:
github-token: ${{secrets.JOHNNY_Q5_REPORTS_TOKEN}}
script: |
await github.request(`POST /repos/${{ github.repository }}/releases`, {
tag_name: "${{ github.event.inputs.versionTag }}",
generate_release_notes: true
});

- name: Create Pre-Release Notes
if: ${{ !startsWith(github.ref, 'refs/tags/')
&& ( contains(github.event.inputs.versionTag, 'alpha')
|| contains(github.event.inputs.versionTag, 'beta')
|| contains(github.event.inputs.versionTag, 'rc')) }}
uses: actions/github-script@v4.0.2
with:
github-token: ${{secrets.JOHNNY_Q5_REPORTS_TOKEN}}
script: |
await github.request(`POST /repos/${{ github.repository }}/releases`, {
tag_name: "${{ github.event.inputs.versionTag }}",
generate_release_notes: true,
prerelease: true
});

- name: Publish artefact to QBiC Nexus Repository
run: mvn --quiet --settings $GITHUB_WORKSPACE/.github.settings.xml deploy
env:
MAVEN_REPO_USERNAME: ${{ secrets.NEXUS_USERNAME }}
MAVEN_REPO_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}

- name: Switch to new branch
run: git checkout -b release/set-version-to-${{ github.event.inputs.versionTag }}

- name: Set remote branch
run: git push --set-upstream origin release/set-version-to-${{ github.event.inputs.versionTag }}

- name: Checkin commit
run: git commit . -m 'Set version to ${{ github.event.inputs.versionTag }}'

- name: Push to Github
run: git push

- name: Open PR with version bump
uses: actions/github-script@v4.0.2
with:
github-token: ${{secrets.JOHNNY_Q5_REPORTS_TOKEN}}
script: |
await github.request(`POST /repos/${{ github.repository }}/pulls`, {
title: 'Update version to ${{ github.event.inputs.versionTag }}',
head: 'release/set-version-to-${{ github.event.inputs.versionTag }}',
base: 'master'
});
15 changes: 15 additions & 0 deletions .github/workflows/label-pull-requests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
name: Label Pull Requests

on:
pull_request:
types: [ opened, edited ]

jobs:
label:
runs-on: ubuntu-latest
steps:
- uses: TimonVS/pr-labeler-action@v3
with:
configuration-path: .github/pr-labels.yml # optional, .github/pr-labeler.yml is the default value
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
46 changes: 46 additions & 0 deletions .github/workflows/nexus-publish-snapshots.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,46 @@
# This workflow will build a package using Maven and then publish it to
# qbic-repo.qbic.uni-tuebingen.de packages when a release is created
# For more information see: https://github.com/actions/setup-java#apache-maven-with-a-settings-path

name: Deploy Snapshot

on:
push:
branches:
- development

jobs:
publish_snapshots:

runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11
settings-path: ${{ github.workspace }}

- name: Load local Maven repository cache
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
# Remove existing snapshot tags which are not supposed to be present
- name: Remove snapshot tags
run: mvn versions:set -DremoveSnapshot
# Set the SNAPSHOT for this build and deployment
- name: Set version in Maven project
run: mvn versions:set -DnewVersion='${project.version}-SNAPSHOT'

- name: Build with Maven
run: mvn -B package --file pom.xml

- name: Publish artefact to QBiC Nexus Repository
run: mvn --settings $GITHUB_WORKSPACE/.github.settings.xml deploy
env:
MAVEN_REPO_USERNAME: ${{ secrets.NEXUS_USERNAME }}
MAVEN_REPO_PASSWORD: ${{ secrets.NEXUS_PASSWORD }}
31 changes: 31 additions & 0 deletions .github/workflows/run-tests.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
name: Run Maven Tests

on:
push:
branches:
- '**'
pull_request:
# The branches below must be a subset of the branches above
branches: [ main, master ]

jobs:
test:
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v2
- name: Set up JDK 11
uses: actions/setup-java@v1
with:
java-version: 11

- name: Load local Maven repository cache
uses: actions/cache@v2
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-

- name: Run tests
run: mvn clean verify
2 changes: 1 addition & 1 deletion LICENSE
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
MIT License

Copyright (c) 2024 QBiC
Copyright (c) 2018-2024 University of Tübingen

Permission is hereby granted, free of charge, to any person obtaining a copy
of this software and associated documentation files (the "Software"), to deal
Expand Down
Loading
Loading