Skip to content

Commit 38fd0a0

Browse files
authored
Merge branch 'develop' into main
2 parents 84b8f01 + 1e486f8 commit 38fd0a0

File tree

358 files changed

+9515
-6616
lines changed

Some content is hidden

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

358 files changed

+9515
-6616
lines changed

.editorconfig

+231-123
Large diffs are not rendered by default.

.github/.gitversion.yml

+2-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
1-
# Copyright 2022 MONAI Consortium
2-
# Licensed under the Apache License, Version 2.0 (the "License");
3-
# you may not use this file except in compliance with the License.
4-
# You may obtain a copy of the License at
5-
# http://www.apache.org/licenses/LICENSE-2.0
6-
# Unless required by applicable law or agreed to in writing, software
7-
# distributed under the License is distributed on an "AS IS" BASIS,
8-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9-
# See the License for the specific language governing permissions and
10-
# limitations under the License.
1+
# SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
2+
# SPDX-License-Identifier: Apache License 2.0
113

124
assembly-versioning-scheme: MajorMinorPatchTag
135
mode: ContinuousDelivery

.github/pull_request_template.md

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
<!--
2+
SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
3+
SPDX-License-Identifier: Apache License 2.0
4+
-->
5+
16
Fixes # .
27

38
### Description

.github/workflows/ci.yml

+67-32
Original file line numberDiff line numberDiff line change
@@ -1,22 +1,14 @@
1-
# Copyright 2021-2022 MONAI Consortium
2-
# Licensed under the Apache License, Version 2.0 (the "License");
3-
# you may not use this file except in compliance with the License.
4-
# You may obtain a copy of the License at
5-
# http://www.apache.org/licenses/LICENSE-2.0
6-
# Unless required by applicable law or agreed to in writing, software
7-
# distributed under the License is distributed on an "AS IS" BASIS,
8-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9-
# See the License for the specific language governing permissions and
10-
# limitations under the License.
1+
# SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
2+
# SPDX-License-Identifier: Apache License 2.0
3+
114

125
name: ci
136

147
on:
158
# Triggers on pushes and on pull requests
169
push:
17-
branches:
18-
- main
19-
pull_request:
10+
paths-ignore:
11+
- 'demos/**'
2012

2113
# Allows you to run this workflow manually from the Actions tab
2214
workflow_dispatch:
@@ -97,17 +89,12 @@ jobs:
9789
uses: github/codeql-action/analyze@v1
9890

9991
unit-test:
100-
runs-on: ${{ matrix.os }}
101-
strategy:
102-
matrix:
103-
os: [ubuntu-latest]
104-
fail-fast: true
105-
92+
runs-on: ubuntu-latest
10693
steps:
107-
- name: Checkout repository
108-
uses: actions/checkout@v2
94+
- name: Set up JDK 11
95+
uses: actions/setup-java@v1
10996
with:
110-
fetch-depth: 0
97+
java-version: 1.11
11198

11299
- uses: actions/setup-dotnet@v1
113100
with:
@@ -121,18 +108,46 @@ jobs:
121108
restore-keys: |
122109
${{ runner.os }}-nuget
123110
111+
- uses: actions/checkout@v2
112+
with:
113+
fetch-depth: 0
114+
115+
- name: Install SonarCloud scanner
116+
if: steps.cache-sonar-scanner.outputs.cache-hit != 'true'
117+
run: dotnet tool install --global dotnet-sonarscanner
118+
124119
- name: Restore dependencies
125120
run: dotnet restore
126121
working-directory: ./src
127-
128-
- name: Build Solution
129-
run: dotnet build -c ${{ env.BUILD_CONFIG }} --nologo ${{ env.SOLUTION }}
122+
123+
- name: Begin SonarScanner
124+
env:
125+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
126+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
127+
run: dotnet sonarscanner begin /k:"Project-MONAI_monai-deploy-informatics-gateway" /o:"project-monai" /d:sonar.login="${{ secrets.SONAR_TOKEN }}" /d:sonar.host.url="https://sonarcloud.io" /d:sonar.cs.opencover.reportsPaths="${{ env.TEST_RESULTS }}/**/*.xml"
130128
working-directory: ./src
131-
132-
- name: Run Unit Test
133-
run: dotnet test -c ${{ env.BUILD_CONFIG }} -v=minimal --results-directory "${{ env.TEST_RESULTS }}" --collect:"XPlat Code Coverage" --settings coverlet.runsettings ${{ env.SOLUTION }}
129+
130+
- name: Build
131+
env:
132+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
133+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
134+
run: dotnet build -c ${{ env.BUILD_CONFIG }} --nologo "${{ env.SOLUTION }}"
135+
working-directory: ./src
136+
137+
- name: Test
138+
env:
139+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
140+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
141+
run: find ~+ -type f -name "*.Test.csproj" | xargs -L1 dotnet test -c ${{ env.BUILD_CONFIG }} -v=minimal -r "${{ env.TEST_RESULTS }}" --collect:"XPlat Code Coverage" --settings coverlet.runsettings
134142
working-directory: ./src
135143

144+
- name: End SonarScanner
145+
env:
146+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
147+
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
148+
run: dotnet sonarscanner end /d:sonar.login="${{ secrets.SONAR_TOKEN }}"
149+
working-directory: ./src
150+
136151
- uses: codecov/codecov-action@v2
137152
with:
138153
token: ${{ secrets.CODECOV_TOKEN }}
@@ -261,6 +276,26 @@ jobs:
261276
sarif_file: ${{ steps.anchore-scan.outputs.sarif }}
262277
token: ${{ secrets.GITHUB_TOKEN }}
263278

279+
- name: Integration Test
280+
env:
281+
TAG: ${{ env.GitVersion_SemVer }}
282+
if: ${{ (matrix.os == 'ubuntu-latest') }}
283+
run: |
284+
pushd tests/Integration.Test
285+
./run.sh
286+
popd
287+
288+
- name: Upload Integration Test Results
289+
uses: actions/[email protected]
290+
with:
291+
name: integration
292+
path: |
293+
tests/Integration.Test/LivingDoc.html
294+
tests/Integration.Test/metrics.log
295+
tests/Integration.Test/services.log
296+
tests/Integration.Test/run.log
297+
retention-days: 30
298+
264299
docs:
265300
runs-on: ubuntu-latest
266301
needs: [calc-version]
@@ -377,13 +412,13 @@ jobs:
377412

378413
- name: Unzip docs
379414
run: |
380-
mkdir ~/docs
381-
unzip artifacts/mig-docs-${{ env.SEMVER }}.zip -d ~/docs
382-
ls -lR ~/docs
415+
mkdir userguide
416+
unzip artifacts/mig-docs-${{ env.SEMVER }}.zip -d userguide/
417+
ls -lR userguide/
383418
384419
- name: Deploy Docs
385420
uses: peaceiris/actions-gh-pages@v3
386421
with:
387422
github_token: ${{ secrets.GITHUB_TOKEN }}
388-
publish_dir: ~/docs
423+
publish_dir: userguide/
389424
publish_branch: docs

.vscode/launch.json

+2-2
Original file line numberDiff line numberDiff line change
@@ -21,7 +21,7 @@
2121
"request": "launch",
2222
"preLaunchTask": "build",
2323
// If you have changed target frameworks, make sure to update the program path.
24-
"program": "${workspaceFolder}/src/InformaticsGateway/bin/Debug/net5.0/Monai.Deploy.InformaticsGateway",
24+
"program": "${workspaceFolder}/src/InformaticsGateway/bin/Debug/net6.0/Monai.Deploy.InformaticsGateway",
2525
"args": [],
2626
"cwd": "${workspaceFolder}/src/InformaticsGateway",
2727
// For more information about the 'console' field, see https://aka.ms/VSCode-CS-LaunchJson-Console
@@ -37,4 +37,4 @@
3737
"request": "attach"
3838
}
3939
]
40-
}
40+
}

CODE_OF_CONDUCT.md

+81
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,81 @@
1+
<!--
2+
SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
3+
SPDX-License-Identifier: Apache License 2.0
4+
-->
5+
6+
# Contributor Covenant Code of Conduct
7+
8+
## Our Pledge
9+
10+
In the interest of fostering an open and welcoming environment, we as
11+
contributors and maintainers pledge to making participation in our project and
12+
our community a harassment-free experience for everyone, regardless of age, body
13+
size, disability, ethnicity, sex characteristics, gender identity and expression,
14+
level of experience, education, socio-economic status, nationality, personal
15+
appearance, race, religion, or sexual identity and orientation.
16+
17+
## Our Standards
18+
19+
Examples of behavior that contributes to creating a positive environment
20+
include:
21+
22+
* Using welcoming and inclusive language
23+
* Being respectful of differing viewpoints and experiences
24+
* Gracefully accepting constructive criticism
25+
* Focusing on what is best for the community
26+
* Showing empathy towards other community members
27+
28+
Examples of unacceptable behavior by participants include:
29+
30+
* The use of sexualized language or imagery and unwelcome sexual attention or
31+
advances
32+
* Trolling, insulting/derogatory comments, and personal or political attacks
33+
* Public or private harassment
34+
* Publishing others' private information, such as a physical or electronic
35+
address, without explicit permission
36+
* Other conduct which could reasonably be considered inappropriate in a
37+
professional setting
38+
39+
## Our Responsibilities
40+
41+
Project maintainers are responsible for clarifying the standards of acceptable
42+
behavior and are expected to take appropriate and fair corrective action in
43+
response to any instances of unacceptable behavior.
44+
45+
Project maintainers have the right and responsibility to remove, edit, or
46+
reject comments, commits, code, wiki edits, issues, and other contributions
47+
that are not aligned to this Code of Conduct, or to ban temporarily or
48+
permanently any contributor for other behaviors that they deem inappropriate,
49+
threatening, offensive, or harmful.
50+
51+
## Scope
52+
53+
This Code of Conduct applies both within project spaces and in public spaces
54+
when an individual is representing the project or its community. Examples of
55+
representing a project or community include using an official project e-mail
56+
address, posting via an official social media account, or acting as an appointed
57+
representative at an online or offline event. Representation of a project may be
58+
further defined and clarified by project maintainers.
59+
60+
## Enforcement
61+
62+
Instances of abusive, harassing, or otherwise unacceptable behavior may be
63+
reported by contacting the project team at [email protected]. All
64+
complaints will be reviewed and investigated and will result in a response that
65+
is deemed necessary and appropriate to the circumstances. The project team is
66+
obligated to maintain confidentiality with regard to the reporter of an incident.
67+
Further details of specific enforcement policies may be posted separately.
68+
69+
Project maintainers who do not follow or enforce the Code of Conduct in good
70+
faith may face temporary or permanent repercussions as determined by other
71+
members of the project's leadership.
72+
73+
## Attribution
74+
75+
This Code of Conduct is adapted from the [Contributor Covenant][homepage], version 1.4,
76+
available at https://www.contributor-covenant.org/version/1/4/code-of-conduct.html
77+
78+
[homepage]: https://www.contributor-covenant.org
79+
80+
For answers to common questions about this code of conduct, see
81+
https://www.contributor-covenant.org/faq

CONTRIBUTING.md

+4
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,7 @@
1+
<!--
2+
SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
3+
SPDX-License-Identifier: Apache License 2.0
4+
-->
15
- [Introduction](#introduction)
26
- [Communicate with us](#communicate-with-us)
37
- [The contribution process](#the-contribution-process)

Dockerfile

+2-10
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
1-
# Copyright 2021 MONAI Consortium
2-
# Licensed under the Apache License, Version 2.0 (the "License");
3-
# you may not use this file except in compliance with the License.
4-
# You may obtain a copy of the License at
5-
# http://www.apache.org/licenses/LICENSE-2.0
6-
# Unless required by applicable law or agreed to in writing, software
7-
# distributed under the License is distributed on an "AS IS" BASIS,
8-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9-
# See the License for the specific language governing permissions and
10-
# limitations under the License.
1+
# SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
2+
# SPDX-License-Identifier: Apache License 2.0
113

124
FROM mcr.microsoft.com/dotnet/sdk:6.0-focal as build
135

GitReleaseManager.yaml

+3-11
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,5 @@
1-
# Copyright 2022 MONAI Consortium
2-
# Licensed under the Apache License, Version 2.0 (the "License");
3-
# you may not use this file except in compliance with the License.
4-
# You may obtain a copy of the License at
5-
# http://www.apache.org/licenses/LICENSE-2.0
6-
# Unless required by applicable law or agreed to in writing, software
7-
# distributed under the License is distributed on an "AS IS" BASIS,
8-
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
9-
# See the License for the specific language governing permissions and
10-
# limitations under the License.
1+
# SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
2+
# SPDX-License-Identifier: Apache License 2.0
113

124
issue-labels-include:
135
- breaking
@@ -54,4 +46,4 @@ close:
5446
:tada: This issue has been resolved in version {milestone} :tada:
5547
5648
The release is available on:
57-
- [GitHub Release](https://github.com/{owner}/{repository}/releases/tag/{milestone})
49+
- [GitHub Release](https://github.com/{owner}/{repository}/releases/tag/{milestone})

README.md

+5
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,8 @@
1+
<!--
2+
// SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
3+
// SPDX-License-Identifier: Apache License 2.0
4+
-->
5+
16
<p align="center">
27
<img src="https://raw.githubusercontent.com/Project-MONAI/MONAI/dev/docs/images/MONAI-logo-color.png" width="50%" alt='project-monai'>
38
</p>

codecov.yml

+3
Original file line numberDiff line numberDiff line change
@@ -1,3 +1,6 @@
1+
# SPDX-FileCopyrightText: © 2021-2022 MONAI Consortium
2+
# SPDX-License-Identifier: Apache License 2.0
3+
14
codecov:
25
require_ci_to_pass: yes
36

0 commit comments

Comments
 (0)