Skip to content

Commit

Permalink
Merge branch 'release-3.x.x' into TASK-5318
Browse files Browse the repository at this point in the history
  • Loading branch information
jtarraga authored Sep 20, 2024
2 parents 41570a2 + d77f216 commit eb352be
Show file tree
Hide file tree
Showing 16 changed files with 785 additions and 207 deletions.
37 changes: 31 additions & 6 deletions .github/workflows/pull-request-approved.yml
Original file line number Diff line number Diff line change
@@ -1,15 +1,40 @@
name: Pull request approve workflow
run-name: 'Pull request approve workflow ${{ github.event.pull_request.head.ref }} -> ${{ github.event.pull_request.base.ref }} by @${{ github.actor }}'

on:
pull_request_review:
types: [ submitted ]

jobs:
build:
uses: opencb/java-common-libs/.github/workflows/build-java-app-workflow.yml@develop
calculate-xetabase-branch:
name: Calculate Xetabase branch
runs-on: ubuntu-22.04
outputs:
xetabase_branch: ${{ steps.get_xetabase_branch.outputs.xetabase_branch }}
steps:
- name: Clone java-common-libs
uses: actions/checkout@v4
with:
fetch-depth: '10'
## This is important to avoid the error in the next step: "fatal: repository 'https://github.com/zetta-genomics/opencga-enterprise.git/' not found"
persist-credentials: false
- id: get_xetabase_branch
name: "Get current branch for Xetabase from target branch"
run: |
chmod +x ./.github/workflows/scripts/get-xetabase-branch.sh
echo "github.event.pull_request.base.ref: ${{ github.event.pull_request.base.ref }}"
echo "github.event.pull_request.head.ref: ${{ github.event.pull_request.head.ref }}"
xetabase_branch=$(./.github/workflows/scripts/get-xetabase-branch.sh ${{ github.event.pull_request.base.ref }})
echo "__Xetabase ref:__ \"${xetabase_branch}\"" | tee -a ${GITHUB_STEP_SUMMARY}
echo "xetabase_branch=${xetabase_branch}" >> $GITHUB_OUTPUT
env:
ZETTA_REPO_ACCESS_TOKEN: ${{ secrets.ZETTA_REPO_ACCESS_TOKEN }}

test:
name: "Test analysis"
uses: ./.github/workflows/test-analysis.yml
needs: build
secrets: inherit
name: "Run all tests before merging"
needs: calculate-xetabase-branch
uses: opencb/java-common-libs/.github/workflows/test-xetabase-workflow.yml@develop
with:
branch: ${{ needs.calculate-xetabase-branch.outputs.xetabase_branch }}
task: ${{ github.event.pull_request.head.ref }}
secrets: inherit
50 changes: 50 additions & 0 deletions .github/workflows/scripts/get-xetabase-branch.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,50 @@
#!/bin/bash

# Function to calculate the corresponding branch of Xetabase project
get_xetabase_branch() {
# Input parameter (branch name)
input_branch="$1"

# If the branch begins with 'TASK' and exists in the opencga-enterprise repository, I return it
if [[ $input_branch == TASK* ]]; then
if [ "$(git ls-remote "https://$ZETTA_REPO_ACCESS_TOKEN@github.com/zetta-genomics/opencga-enterprise.git" "$input_branch" )" ] ; then
echo $input_branch;
return 0;
fi
fi

# Check if the branch name is "develop" in that case return the same branch name
if [[ "$input_branch" == "develop" ]]; then
echo "develop"
return 0
fi

# Check if the branch name starts with "release-" and follows the patterns "release-a.x.x" or "release-a.b.x"
if [[ "$input_branch" =~ ^release-([0-9]+)\.x\.x$ ]] || [[ "$input_branch" =~ ^release-([0-9]+)\.([0-9]+)\.x$ ]]; then
# Extract the MAJOR part of the branch name
MAJOR=${BASH_REMATCH[1]}
# Calculate the XETABASE_MAJOR by subtracting 1 from MAJOR
XETABASE_MAJOR=$((MAJOR - 1))
# Check if the XETABASE_MAJOR is negative
if (( XETABASE_MAJOR < 0 )); then
echo "Error: 'MAJOR' digit after subtraction results in a negative number."
return 1
fi
# Construct and echo the new branch name
echo "release-$XETABASE_MAJOR.${input_branch#release-$MAJOR.}"
return 0
fi

# If the branch name does not match any of the expected patterns
echo "Error: The branch name is not correct."
return 1
}

# Check if the script receives exactly one argument
if [ "$#" -ne 1 ]; then
echo "Usage: $0 <branch-name>"
exit 1
fi

# Call the function with the input branch name
get_xetabase_branch "$1"
2 changes: 1 addition & 1 deletion biodata-external/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -6,7 +6,7 @@
<parent>
<artifactId>biodata</artifactId>
<groupId>org.opencb.biodata</groupId>
<version>3.2.1-SNAPSHOT</version>
<version>3.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion biodata-formats/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<parent>
<groupId>org.opencb.biodata</groupId>
<artifactId>biodata</artifactId>
<version>3.2.1-SNAPSHOT</version>
<version>3.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
2 changes: 1 addition & 1 deletion biodata-models/pom.xml
Original file line number Diff line number Diff line change
Expand Up @@ -22,7 +22,7 @@
<parent>
<groupId>org.opencb.biodata</groupId>
<artifactId>biodata</artifactId>
<version>3.2.1-SNAPSHOT</version>
<version>3.3.0-SNAPSHOT</version>
<relativePath>../pom.xml</relativePath>
</parent>

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -28,29 +28,29 @@

public class Interpretation {

private String id;
private String uuid;
private String description;
private String clinicalAnalysisId;
protected String id;
protected String uuid;
protected String name;
protected String description;
protected String clinicalAnalysisId;

/**
* Interpretation algorithm tool used to generate this interpretation.
*/
private ClinicalAnalyst analyst;
private InterpretationMethod method;
protected ClinicalAnalyst analyst;
protected InterpretationMethod method;

private List<ClinicalVariant> primaryFindings;
private List<ClinicalVariant> secondaryFindings;
protected List<ClinicalVariant> primaryFindings;
protected List<ClinicalVariant> secondaryFindings;

private List<ClinicalComment> comments;
protected List<ClinicalComment> comments;

private InterpretationStats stats;
protected InterpretationStats stats;

private boolean locked;
private Status status;
private String creationDate;
private String modificationDate;
private int version;
protected boolean locked;
protected String creationDate;
protected String modificationDate;
protected int version;

/**
* Users can add custom information in this field.
Expand All @@ -61,12 +61,23 @@ public class Interpretation {
public Interpretation() {
}

@Deprecated
public Interpretation(String id, String uuid, String description, String clinicalAnalysisId, ClinicalAnalyst analyst,
InterpretationMethod method, List<ClinicalVariant> primaryFindings, List<ClinicalVariant> secondaryFindings,
List<ClinicalComment> comments, InterpretationStats stats, Status status, String creationDate,
String modificationDate, boolean locked, int version, Map<String, Object> attributes) {
this(id, uuid, id, description, clinicalAnalysisId, analyst, method, primaryFindings, secondaryFindings,
comments, stats, locked, creationDate, modificationDate, version, attributes);
}

public Interpretation(String id, String uuid, String name, String description, String clinicalAnalysisId,
ClinicalAnalyst analyst, InterpretationMethod method, List<ClinicalVariant> primaryFindings,
List<ClinicalVariant> secondaryFindings, List<ClinicalComment> comments,
InterpretationStats stats, boolean locked, String creationDate, String modificationDate,
int version, Map<String, Object> attributes) {
this.id = id;
this.uuid = uuid;
this.name = name;
this.description = description;
this.clinicalAnalysisId = clinicalAnalysisId;
this.analyst = analyst;
Expand All @@ -75,10 +86,9 @@ public Interpretation(String id, String uuid, String description, String clinica
this.secondaryFindings = secondaryFindings;
this.comments = comments;
this.stats = stats;
this.status = status;
this.locked = locked;
this.creationDate = creationDate;
this.modificationDate = modificationDate;
this.locked = locked;
this.version = version;
this.attributes = attributes;
}
Expand All @@ -88,6 +98,7 @@ public String toString() {
final StringBuilder sb = new StringBuilder("Interpretation{");
sb.append("id='").append(id).append('\'');
sb.append(", uuid='").append(uuid).append('\'');
sb.append(", name='").append(name).append('\'');
sb.append(", description='").append(description).append('\'');
sb.append(", clinicalAnalysisId='").append(clinicalAnalysisId).append('\'');
sb.append(", analyst=").append(analyst);
Expand All @@ -96,7 +107,6 @@ public String toString() {
sb.append(", secondaryFindings=").append(secondaryFindings);
sb.append(", comments=").append(comments);
sb.append(", stats=").append(stats);
sb.append(", status=").append(status);
sb.append(", creationDate='").append(creationDate).append('\'');
sb.append(", modificationDate='").append(modificationDate).append('\'');
sb.append(", locked='").append(locked).append('\'');
Expand Down Expand Up @@ -124,6 +134,15 @@ public Interpretation setUuid(String uuid) {
return this;
}

public String getName() {
return name;
}

public Interpretation setName(String name) {
this.name = name;
return this;
}

public String getDescription() {
return description;
}
Expand Down Expand Up @@ -196,15 +215,6 @@ public Interpretation setStats(InterpretationStats stats) {
return this;
}

public Status getStatus() {
return status;
}

public Interpretation setStatus(Status status) {
this.status = status;
return this;
}

public String getCreationDate() {
return creationDate;
}
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -19,17 +19,22 @@
public class Status {

protected String id;
protected String name;
protected String description;
protected String date;

public Status() {
this("", "", "", "");
this("", "", "");
}

public Status(String id, String description, String date) {
this.id = id;
this.description = description;
this.date = date;
}

@Deprecated
public Status(String id, String name, String description, String date) {
this.id = id;
this.name = name;
this.description = description;
this.date = date;
}
Expand All @@ -38,7 +43,6 @@ public Status(String id, String name, String description, String date) {
public String toString() {
final StringBuilder sb = new StringBuilder("Status{");
sb.append("id='").append(id).append('\'');
sb.append(", name='").append(name).append('\'');
sb.append(", description='").append(description).append('\'');
sb.append(", date='").append(date).append('\'');
sb.append('}');
Expand All @@ -53,15 +57,13 @@ public boolean equals(Object o) {
Status status = (Status) o;

if (!id.equals(status.id)) return false;
if (name != null ? !name.equals(status.name) : status.name != null) return false;
if (description != null ? !description.equals(status.description) : status.description != null) return false;
return date != null ? date.equals(status.date) : status.date == null;
}

@Override
public int hashCode() {
int result = id.hashCode();
result = 31 * result + (name != null ? name.hashCode() : 0);
result = 31 * result + (description != null ? description.hashCode() : 0);
result = 31 * result + (date != null ? date.hashCode() : 0);
return result;
Expand All @@ -76,12 +78,13 @@ public Status setId(String id) {
return this;
}

@Deprecated
public String getName() {
return name;
return id;
}

@Deprecated
public Status setName(String name) {
this.name = name;
return this;
}

Expand Down
Loading

0 comments on commit eb352be

Please sign in to comment.