Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
taketoday committed Apr 14, 2024
0 parents commit 0e0ec23
Show file tree
Hide file tree
Showing 20,790 changed files with 1,276,520 additions and 0 deletions.
The diff you're trying to view is too large. We only load the first 3000 changed files.
37 changes: 37 additions & 0 deletions .all-contributorsrc
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
{
"files": [
"README.md"
],
"imageSize": 100,
"commit": false,
"contributors": [
{
"login": "iluwatar",
"name": "Ilkka Seppälä",
"avatar_url": "https://avatars1.githubusercontent.com/u/582346?v=4",
"profile": "https://github.com/iluwatar",
"contributions": [
"projectManagement",
"maintenance",
"content"
]
},
{
"login": "ohbus",
"name": "Subhrodip Mohanta",
"avatar_url": "https://avatars0.githubusercontent.com/u/13291222?v=4",
"profile": "https://subho.xyz",
"contributions": [
"code",
"review",
"maintenance"
]
}
],
"contributorsPerLine": 7,
"projectName": "java-development-practice",
"projectOwner": "tu-yucheng",
"repoType": "github",
"repoHost": "https://github.com",
"skipCi": true
}
11 changes: 11 additions & 0 deletions .editorconfig
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
root = true

[*.{adoc,bat,groovy,html,java,js,json,yaml,ts,yml,feature,jsp,kt,kts,md,properties,py,rb,sh,sql,svg,txt,xml,xsd}]
charset = utf-8

[*.{groovy,java,kt,kts,xml,xsd,js,json,ts,yaml,yml,sql,feature}]
indent_style = space
indent_size = 3
ij_continuation_indent_size = 6
end_of_line = lf
trim_trailing_whitespace = true
6 changes: 6 additions & 0 deletions .gitattributes
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
#
# https://help.github.com/articles/dealing-with-line-endings/
#
# These are explicitly windows files and should use crlf
*.bat text eol=crlf

1 change: 1 addition & 0 deletions .github/FUNDING.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
github: [tuyucheng]
61 changes: 61 additions & 0 deletions .github/stale.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,61 @@
# Configuration for probot-stale - https://github.com/probot/stale

# Number of days of inactivity before an Issue or Pull Request becomes stale
daysUntilStale: 60

# Number of days of inactivity before an Issue or Pull Request with the stale label is closed.
# Set to false to disable. If disabled, issues still need to be closed manually, but will remain marked as stale.
daysUntilClose: false

# Only issues or pull requests with all of these labels are check if stale. Defaults to `[]` (disabled)
onlyLabels: []

# Issues or Pull Requests with these labels will never be considered stale. Set to `[]` to disable
exemptLabels:
- "info: help wanted"

# Set to true to ignore issues in a project (defaults to false)
exemptProjects: false

# Set to true to ignore issues in a milestone (defaults to false)
exemptMilestones: false

# Set to true to ignore issues with an assignee (defaults to false)
exemptAssignees: false

# Label to use when marking as stale
staleLabel: "status: stale"

# Comment to post when marking as stale. Set to `false` to disable
markComment: >
This issue has been automatically marked as stale because it has not had
recent activity. The issue will be unassigned if no further activity occurs. Thank you
for your contributions.
# Comment to post when removing the stale label.
# unmarkComment: >
# Your comment here.

# Comment to post when closing a stale Issue or Pull Request.
# closeComment: >
# Your comment here.

# Limit the number of actions per hour, from 1-30. Default is 30
limitPerRun: 30

# Limit to only `issues` or `pulls`
# only: issues

# Optionally, specify configuration settings that are specific to just 'issues' or 'pulls':
pulls:
daysUntilStale: 30
daysUntilClose: 45
markComment: >
This pull request has been automatically marked as stale because it has not had
recent activity. It will be closed if no further activity occurs.
closeComment: >
Closed due to inactivity. Thank you for your contributions.
# issues:
# exemptLabels:
# - confirmed
170 changes: 170 additions & 0 deletions .github/workflows/maven-ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,170 @@
name: Java CI

on:
push:
branches: [ master ]

jobs:
build-and-analyze:
runs-on: ubuntu-latest

name: Build and Run Sonar analysis on JDK 21
steps:
- name: Checkout sourcecode
uses: actions/checkout@v3

- name: Cache Local Maven Repository
uses: actions/cache@v3
with:
path: ~/.m2/repository
key: ${{ runner.os }}-maven-${{ hashFiles('**/pom.xml') }}
restore-keys: |
${{ runner.os }}-maven-
- name: Setup Java 8 (1/2)
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 8
- name: Setup Java 8 (2/2)
run: echo "JAVA_8=$JAVA_HOME" >> $GITHUB_ENV

- name: Setup Java 19 (1/2)
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 19
- name: Setup Java 19 (2/2)
run: echo "JAVA_19=$JAVA_HOME" >> $GITHUB_ENV

- name: Setup Java 20 (1/2)
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 20
- name: Setup Java 20 (2/2)
run: echo "JAVA_20=$JAVA_HOME" >> $GITHUB_ENV

- name: Setup Java 17 (1/2)
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 17
- name: Setup Java 17 (2/2)
run: echo "JAVA_17=$JAVA_HOME" >> $GITHUB_ENV

# The LAST Java in the list becomes the default (because each overwrites the settings)!
- name: Setup Java 21 (1/2)
uses: actions/setup-java@v3
with:
distribution: 'adopt'
java-version: 21
- name: Setup Java 21 (2/2)
run: echo "JAVA_21=$JAVA_HOME" >> $GITHUB_ENV

- name: Create toolchains.xml
shell: bash
run: |
mkdir -p $HOME/.m2 \
&& cat << EOF > $HOME/.m2/toolchains.xml
<?xml version="1.0" encoding="UTF8"?>
<toolchains>
<toolchain>
<type>jdk</type>
<provides>
<version>8</version>
</provides>
<configuration>
<jdkHome>${{ env.JAVA_8 }}</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>17</version>
</provides>
<configuration>
<jdkHome>${{ env.JAVA_17 }}</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>19</version>
</provides>
<configuration>
<jdkHome>${{ env.JAVA_19 }}</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>20</version>
</provides>
<configuration>
<jdkHome>${{ env.JAVA_20 }}</jdkHome>
</configuration>
</toolchain>
<toolchain>
<type>jdk</type>
<provides>
<version>21</version>
</provides>
<configuration>
<jdkHome>${{ env.JAVA_21 }}</jdkHome>
</configuration>
</toolchain>
</toolchains>
EOF
- name: Verify setup
shell: bash
run: |
echo "Showing currently installed Java versions:";\
echo "======================================";\
echo "Default Java"; \
java -version ; \
javac -version ; \
echo JAVA_HOME=${JAVA_HOME} ; \
echo "======================================";\
echo "Java 8"; \
${{ env.JAVA_8 }}/bin/java -version ; \
${{ env.JAVA_8 }}/bin/javac -version ; \
echo "======================================";\
echo "Java 17"; \
${{ env.JAVA_17 }}/bin/java -version ; \
${{ env.JAVA_17 }}/bin/javac -version ; \
echo "======================================";\
echo "Java 19"; \
${{ env.JAVA_19 }}/bin/java -version ; \
${{ env.JAVA_19 }}/bin/javac -version ; \
echo "======================================";\
echo "Java 20"; \
${{ env.JAVA_20 }}/bin/java -version ; \
${{ env.JAVA_20 }}/bin/javac -version ; \
echo "======================================";\
echo "Java 21"; \
${{ env.JAVA_21 }}/bin/java -version ; \
${{ env.JAVA_21 }}/bin/javac -version ; \
echo "======================================";\
cat $HOME/.m2/toolchains.xml; \
echo "======================================";
# Cache Sonar packages which as used to run analysis and collect metrics
- name: Cache SonarCloud packages
uses: actions/cache@v3
with:
path: ~/.sonar/cache
key: ${{ runner.os }}-sonar
restore-keys: ${{ runner.os }}-sonar

# Some tests need screen access
- name: Install xvfb
run: sudo apt-get install -y xvfb

- name: Build with Maven and run SonarQube analysis
run: xvfb-run ./mvnw -B clean verify org.sonarsource.scanner.maven:sonar-maven-plugin:sonar -Dsonar.projectKey=tu-yucheng_taketoday-tutorial4j -Dsonar.organization=tuyucheng -Dsonar.host.url=https://sonarcloud.io -Dsonar.login=${{ secrets.SONAR_TOKEN }} -Pall
env:
# These two env variables are needed for sonar analysis
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
SONAR_TOKEN: ${{ secrets.SONAR_TOKEN }}
Loading

0 comments on commit 0e0ec23

Please sign in to comment.