Skip to content

Commit 51b2abb

Browse files
authored
Add first working build, no tests (#1)
* Add first working build, no tests
1 parent 3526898 commit 51b2abb

15 files changed

Lines changed: 1529 additions & 1 deletion

File tree

.github/CONTRIBUTING.md

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
## How to contribute to Dockstore
2+
3+
#### **Did you find a bug?**
4+
5+
* **Ensure the bug was not already reported** by searching on GitHub under [Issues](https://github.com/dockstore/dockstore/issues).
6+
7+
* If you're unable to find an open issue addressing the problem, [open a new one](https://github.com/dockstore/dockstore/issues/new). Be sure to include a **title and clear description**, as much relevant information as possible, and a **code sample** or an **executable test case** demonstrating the expected behavior that is not occurring.
8+
9+
#### **Did you write a patch that fixes a bug?**
10+
11+
* Open a new GitHub pull request with the patch.
12+
13+
* Ensure the PR description clearly describes the problem and solution. Include the relevant issue number if applicable.
14+
15+
* Before submitting, please read ensure that your code passes the style guide and tests. See the GitHub status checks on your PR for more details. Note that until we resolve [this](https://github.com/dockstore/dockstore/issues/3541) issue, a large number of integration tests will fail.
16+
17+
#### **Do you intend to add a new feature or change an existing one?**
18+
19+
* Suggest your change as a [github issue](https://github.com/dockstore/dockstore/issues) either by creating a new issue or commenting on an existing one and start writing code. The relevant repositories are nested under our [organization](https://github.com/dockstore) including the webservice (dockstore), the user interface (dockstore-ui2), the command-line interface (dockstore-cli), and many more.
20+
21+
#### **Do you want to contribute to the Dockstore documentation?**
22+
23+
* Most of our documentation is generated from [dockstore-documentation](https://github.com/dockstore/dockstore-documentation).
Lines changed: 40 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,40 @@
1+
---
2+
name: Bug report
3+
about: Create a report to help us improve
4+
title: ''
5+
labels: 'bug'
6+
assignees: ''
7+
8+
---
9+
10+
**Describe the bug**
11+
A clear and concise description of what the bug is.
12+
13+
**To Reproduce**
14+
Steps to reproduce the behavior:
15+
1. Go to '...'
16+
2. Click on '....'
17+
3. Scroll down to '....'
18+
4. See error
19+
20+
**Expected behavior**
21+
A clear and concise description of what you expected to happen.
22+
23+
**Screenshots**
24+
If applicable, add screenshots to help explain your problem.
25+
26+
**Desktop (please complete the following information):**
27+
- OS: [e.g. iOS]
28+
- Browser [e.g. chrome, safari]
29+
- Version [e.g. 22]
30+
31+
**Smartphone (please complete the following information):**
32+
- Device: [e.g. iPhone6]
33+
- OS: [e.g. iOS8.1]
34+
- Browser [e.g. stock browser, safari]
35+
- Version [e.g. 22]
36+
37+
**Additional context**
38+
- UI version: [e.g. 2.5.0]
39+
- Webservice version: [e.g. 1.8.0]
40+
- host location: [e.g. staging.dockstore.org]

.github/ISSUE_TEMPLATE/config.yml

Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
blank_issues_enabled: false
2+
contact_links:
3+
- name: Dockstore Community Forum
4+
url: https://discuss.dockstore.org/c/dockstore-arch/7
5+
about: Please ask and answer questions here.
6+
- name: Dockstore Security and Internal Issues
7+
url: https://ucsc-cgl.atlassian.net/browse/DOCK
8+
about: Please report security vulnerabilities here.
Lines changed: 20 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,20 @@
1+
---
2+
name: Feature request
3+
about: Suggest an idea for this project
4+
title: ''
5+
labels: 'enhancement'
6+
assignees: ''
7+
8+
---
9+
10+
**Is your feature request related to a problem? Please describe.**
11+
A clear and concise description of what the problem is. Ex. I'm always frustrated when [...]
12+
13+
**Describe the solution you'd like**
14+
A clear and concise description of what you want to happen.
15+
16+
**Describe alternatives you've considered**
17+
A clear and concise description of any alternative solutions or features you've considered.
18+
19+
**Additional context**
20+
Add any other context or screenshots about the feature request here.

.github/PULL_REQUEST_TEMPLATE.md

Lines changed: 33 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,33 @@
1+
**Description**
2+
A description of the PR, should include a decent explanation as to why this change was needed and a decent explanation as to what this change does
3+
4+
**Review Instructions**
5+
Describe if this ticket needs review and if so, how one may go about it in qa and/or staging environments.
6+
For example, a ticket based on Security Hub, Snyk, or Dependabot may not need review since those services
7+
will generate new warnings if the issue has not been resolved properly. On the other hand, an infrastructure
8+
ticket that results in visible changes to the end-user will definitely require review.
9+
Many tickets will likely be between these two extremes, so some judgement may be required.
10+
11+
**Issue**
12+
A link to a github issue or SEAB- ticket (using that as a prefix)
13+
14+
**Security and Privacy**
15+
16+
If there are any concerns that require extra attention from the security team, highlight them here.
17+
18+
e.g. Does this change...
19+
* Any user data we collect, or data location?
20+
* Access control, authentication or authorization?
21+
* Encryption features?
22+
23+
Please make sure that you've checked the following before submitting your pull request. Thanks!
24+
25+
- [ ] Check that you pass the basic style checks and unit tests by running `mvn clean install`
26+
- [ ] Ensure that the PR targets the correct branch. Check the milestone or fix version of the ticket.
27+
- [ ] Follow the existing JPA patterns for queries, using named parameters, to avoid SQL injection
28+
- [ ] If you are changing dependencies, check the Snyk status check or the dashboard to ensure you are not introducing new high/critical vulnerabilities
29+
- [ ] Assume that inputs to the API can be malicious, and sanitize and/or check for Denial of Service type values, e.g., massive sizes
30+
- [ ] Do not serve user-uploaded binary images through the Dockstore API
31+
- [ ] Ensure that endpoints that only allow privileged access enforce that with the `@RolesAllowed` annotation
32+
- [ ] Do not create cookies, although this may change in the future
33+
- [ ] If this PR is for a user-facing feature, create and link a documentation ticket for this feature (usually in the same milestone as the linked issue). Style points if you create a documentation PR directly and link that instead.

.github/dependabot.yml

Lines changed: 39 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,39 @@
1+
version: 2
2+
updates:
3+
4+
# Maintain dependencies for GitHub Actions, path is indeed "/" https://docs.github.com/en/code-security/dependabot/working-with-dependabot/keeping-your-actions-up-to-date-with-dependabot#enabling-dependabot-version-updates-for-actions
5+
- package-ecosystem: "github-actions"
6+
directory: "/"
7+
schedule:
8+
interval: "daily"
9+
reviewers:
10+
- "dockstore/dockstore"
11+
12+
# Maintain dependencies for Maven
13+
- package-ecosystem: "maven"
14+
directory: "/"
15+
schedule:
16+
interval: "daily"
17+
# start with security updates only https://stackoverflow.com/a/68254421
18+
open-pull-requests-limit: 0
19+
reviewers:
20+
- "dockstore/dockstore"
21+
22+
# Maintain dependencies for Dockerfile
23+
- package-ecosystem: "docker"
24+
directory: "/"
25+
schedule:
26+
interval: "daily"
27+
# start with security updates only https://stackoverflow.com/a/68254421
28+
open-pull-requests-limit: 0
29+
reviewers:
30+
- "dockstore/dockstore"
31+
32+
# Maintain dependencies for swagger-ui and cwltool
33+
- package-ecosystem: "pip"
34+
directory: "/"
35+
schedule:
36+
interval: "daily"
37+
# start with security updates only https://stackoverflow.com/a/68254421
38+
reviewers:
39+
- "dockstore/dockstore"

.github/workflows/mvn.yml

Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
name: Java CI
2+
3+
on: [push]
4+
5+
jobs:
6+
build:
7+
runs-on: ubuntu-latest
8+
9+
steps:
10+
- name: install git secrets
11+
run: |
12+
wget --no-verbose -O git-secrets-1.3.0.tar.gz https://github.com/awslabs/git-secrets/archive/1.3.0.tar.gz
13+
tar -zxf git-secrets-1.3.0.tar.gz
14+
cd git-secrets-1.3.0
15+
sudo make install
16+
- uses: actions/checkout@v4
17+
# Step that does that actual cache save and restore
18+
- uses: actions/cache@v4
19+
with:
20+
path: ~/.m2/repository
21+
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
22+
restore-keys: |
23+
${{ runner.os }}-maven-
24+
- name: Set up JDK
25+
uses: actions/setup-java@v4
26+
with:
27+
java-version: '17.0.4+8'
28+
distribution: 'adopt'
29+
- name: Build with mvn
30+
run: ./mvnw -B -ntp clean install

.mvn/jvm.config

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+
-XX:+IgnoreUnrecognizedVMOptions --add-opens=java.base/java.util=ALL-UNNAMED
Lines changed: 18 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,18 @@
1+
# Licensed to the Apache Software Foundation (ASF) under one
2+
# or more contributor license agreements. See the NOTICE file
3+
# distributed with this work for additional information
4+
# regarding copyright ownership. The ASF licenses this file
5+
# to you under the Apache License, Version 2.0 (the
6+
# "License"); you may not use this file except in compliance
7+
# with the License. You may obtain a copy of the License at
8+
#
9+
# https://www.apache.org/licenses/LICENSE-2.0
10+
#
11+
# Unless required by applicable law or agreed to in writing,
12+
# software distributed under the License is distributed on an
13+
# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
14+
# KIND, either express or implied. See the License for the
15+
# specific language governing permissions and limitations
16+
# under the License.
17+
distributionUrl=https://repo.maven.apache.org/maven2/org/apache/maven/apache-maven/3.8.6/apache-maven-3.8.6-bin.zip
18+
wrapperUrl=https://repo.maven.apache.org/maven2/org/apache/maven/wrapper/maven-wrapper/3.1.1/maven-wrapper-3.1.1.jar

README.md

Lines changed: 11 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1,11 @@
1-
# openapi-java-invenio-client
1+
![example workflow](https://github.com/dockstore/openapi-java-invenio-client/actions/workflows/mvn.yml/badge.svg)
2+
3+
# openapi-java-invenio-client
4+
5+
A generated client for zenodo's second generation API using a openAPI description
6+
7+
You can find a list of the Zenodo REST APIs at this [endpoint](https://inveniosoftware.github.io/invenio-openapi/) and you can find the REST API documentation [here](https://inveniordm.docs.cern.ch/reference/rest_api_index/)
8+
9+
The OpenAPI description is from https://github.com/inveniosoftware/invenio-openapi/blob/master/docs/openapi.yaml
10+
11+
There is also a test application at [src/main/java/io/dockstore/EntryCreatorExample.java](src/main/java/io/dockstore/EntryCreatorExample.java) that can be used to test some basic zenodo operations like depositing and publishing given a valid zenodo token.

0 commit comments

Comments
 (0)