Skip to content

Commit

Permalink
Initial commit
Browse files Browse the repository at this point in the history
  • Loading branch information
PriestOfFerns authored Feb 18, 2024
0 parents commit 209ef36
Show file tree
Hide file tree
Showing 37 changed files with 2,065 additions and 0 deletions.
348 changes: 348 additions & 0 deletions .checkstyle/checkstyle.xml

Large diffs are not rendered by default.

157 changes: 157 additions & 0 deletions .circleci/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,157 @@
# Use the latest 2.1 version of CircleCI pipeline process engine.
# See: https://circleci.com/docs/2.0/configuration-reference
version: 2.1

orbs:
discord: antonioned/[email protected]

executors:
java_large:
resource_class: large
docker:
- image: cimg/openjdk:17.0
environment:
ORG_GRADLE_PROJECT_block_external_repositories: "true"


commands:
checkout_and_cache:
steps:
- checkout
- run: git submodule sync
- run: git submodule update --init

- restore_cache:
keys:
- v1-gradle-home-{{ checksum "build.gradle" }}-{{ checksum "gradle.properties" }}
- v1-gradle-home
- restore_cache:
keys:
- v1-{{ checksum "build.gradle" }}-{{ checksum "gradle.properties" }}
save_artifacts:
parameters:
artifact_name:
type: string
default: eureka
version:
type: string
default: ${CIRCLE_SHA1}
steps:
# Rename artifacts to "forge.jar" and "fabric.jar"
- run: mkdir artifacts
- run: find ./forge/build/libs -regextype posix-extended -regex ".*/<< parameters.artifact_name >>(-[^-]+){2}.jar" -exec bash -c 'cp $0 ./artifacts/<< parameters.artifact_name >>-forge-<< parameters.version >>.jar' {} \;
- run: find ./fabric/build/libs -regextype posix-extended -regex ".*/<< parameters.artifact_name >>(-[^-]+){2}.jar" -exec bash -c 'cp $0 ./artifacts/<< parameters.artifact_name >>-fabric-<< parameters.version >>.jar' {} \;

# Store artifacts
- store_artifacts:
path: artifacts
save_artifacts_and_generate_discord:
parameters:
artifact_name:
type: string
default: eureka
version:
type: string
default: ${CIRCLE_SHA1}
steps:
- save_artifacts:
artifact_name: << parameters.artifact_name >>
version: << parameters.version >>
- run: >-
echo 'export DISCORD_MSG="
New version, **${CIRCLE_TAG}** |
[Download Forge](https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/${CIRCLE_NODE_INDEX}/artifacts/<< parameters.artifact_name >>-forge-<< parameters.version >>.jar) |
[Download Fabric](https://output.circle-artifacts.com/output/job/${CIRCLE_WORKFLOW_JOB_ID}/artifacts/${CIRCLE_NODE_INDEX}/artifacts/<< parameters.artifact_name >>-fabric-<< parameters.version >>.jar)
"' >> "$BASH_ENV"
save_gradle_cache:
steps:
- save_cache:
key: v1-gradle-home-{{ checksum "build.gradle" }}-{{ checksum "gradle.properties" }}
paths:
- ~/.gradle
- save_cache:
key: v1-gradle-{{ checksum "build.gradle" }}-{{ checksum "gradle.properties" }}
paths:
- .gradle

# Define a job to be invoked later in a workflow.
# See: https://circleci.com/docs/2.0/configuration-reference/#jobs
jobs:
gradle_build:
executor: java_large
steps:
# Checkout repo
- checkout_and_cache
# Run build
- run:
name: "Build"
command: "./gradlew build --no-daemon --stacktrace"
- save_artifacts
- save_gradle_cache

publish_to_maven:
executor: java_large
steps:
# Checkout repo
- checkout_and_cache
# Run build
- run:
name: "Build"
command: "./gradlew build publish --no-daemon --stacktrace"
deploy_to_curse:
executor: java_large
steps:
- checkout_and_cache
- run: echo 'export ORG_GRADLE_PROJECT_CustomReleaseVersion=${CIRCLE_TAG}' >> "$BASH_ENV"
- run:
command: "./gradlew build modrinth curseforge --no-daemon --stacktrace --continue"
notify_playtesters:
executor: java_large
steps:
# Checkout repo
- checkout_and_cache
# Run build
- run:
name: "Build"
command: "./gradlew build --no-daemon --stacktrace"
- save_artifacts_and_generate_discord
- discord/status:
success_message: ${DISCORD_MSG}
success_only: true
webhook: ${EUREKA_118_WEBHOOK}

# Invoke jobs via workflows
# See: https://circleci.com/docs/2.0/configuration-reference/#workflows
workflows:
build:
jobs:
- gradle_build:
context:
- valkyrien_maven

- notify_playtesters:
filters:
tags:
only: /^playtest.*/
branches:
ignore: /.*/
context:
- discord_webhooks
- valkyrien_maven
- deploy_to_curse:
filters:
tags:
only: /^release.*/
branches:
ignore: /.*/
context:
- curse_publishing
- valkyrien_maven
- publish_to_maven:
filters:
branches:
only:
- /.*\/main/
context:
- valkyrien_maven
- github_maven
49 changes: 49 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,49 @@
name: Bug report
description: Let us know about a bug that occurs without other mods
title: '<title>'
labels: bug
assignees: []
body:
- type: checkboxes
attributes:
label: This issue occurs when only Valkyrien Skies and addons are installed and no other mods
options:
- label: I have tested this issue and it occurs when no other mods are installed
required: true
- type: dropdown
attributes:
label: Minecraft Version
description: What Minecraft version does this issue occur on?
options:
- 1.16
- 1.18
- 1.19
- 1.20​
validations:
required: true
- type: dropdown
attributes:
label: Mod Loader
description: What mod loader does this issue occur on?
options:
- Forge
- Fabric
- Quilt
validations:
required: true
- type: textarea
attributes:
label: Issue description
description: Describe what happens, and what you expect to happen instead
validations:
required: true
- type: textarea
attributes:
label: Issue reproduction
description: Describe how to reproduce your issue
validations:
required: true
- type: textarea
attributes:
label: Logs
description: Go to `.minecraft/logs` and drag and drop the `latest.log` and `debug.log` file into this text field
59 changes: 59 additions & 0 deletions .github/ISSUE_TEMPLATE/compatibility_issue.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
name: Compatibility issue
description: Let us know about a bug that occurs when another mod is installed
title: '<title>'
labels: compat
assignees: []
body:
- type: markdown
attributes:
value: |
**Note:** do not report issues with the following mods:
- Optifine
- Magma Server (maybe try Arclight?)
- type: input
attributes:
label: Mod Name
description: The name of the mod that causes the compatibility issue
validations:
required: true
- type: checkboxes
attributes:
label: This issue occurs when only Valkyrien Skies, addons, and the mod I have specified are installed and no other mods
options:
- label: I have tested this issue and it occurs with only Valkyrien Skies, addons, and the mod I have specified
- type: dropdown
attributes:
label: Minecraft Version
description: What Minecraft version does this issue occur on?
options:
- 1.16
- 1.18
- 1.19
validations:
required: true
- type: dropdown
attributes:
label: Mod Loader
description: What mod loader does this issue occur on?
options:
- Forge
- Fabric
- Quilt
validations:
required: true
- type: textarea
attributes:
label: Issue description
description: Describe what happens, and what you expect to happen instead
validations:
required: true
- type: textarea
attributes:
label: Issue reproduction
description: Describe how to reproduce your issue
validations:
required: true
- type: textarea
attributes:
label: Logs
description: Go to `.minecraft/logs` and drag and drop the `latest.log` and `debug.log` file into this text field
20 changes: 20 additions & 0 deletions .github/actions/setup-gradle/action.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,20 @@
name: "Setup Gradle"
description: "Installs java and restores gradle and build cache"

runs:
using: "composite"
steps:
- name: Install JDK 17 (Temurin)
uses: actions/setup-java@v2
with:
java-version: 17
distribution: 'temurin'

- name: Cache local .gradle and gradle packages
uses: actions/cache@v3
with:
path: |
~/.gradle/caches
**/.gradle
key: ${{ runner.os }}-gradle-${{ hashFiles('**/*.gradle', '**/gradle.properties') }}
restore-keys: ${{ runner.os }}-gradle
37 changes: 37 additions & 0 deletions .github/workflows/build-1.18.x.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,37 @@
name: Build
on:
push:
branches:
- '1.18.x/*'
pull_request:
types: [ opened, synchronize, reopened ]
jobs:
validate-gradle:
name: "Validate Gradle wrapper"
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v2
with:
submodules: true # Clone with vs-core submodule
- uses: gradle/wrapper-validation-action@v1

test-server:
name: Test Server
strategy:
matrix:
serverType: [ 'fabric', 'forge' ]
runs-on: ubuntu-latest
timeout-minutes: 20 # Fail after 20 minutes
steps:
- name: Shallow Clone (--recurse-submodules)
uses: actions/checkout@v2
with:
submodules: recursive

- name: Setup Gradle & Caches
uses: "./.github/actions/setup-gradle"

- name: Test Server
uses: ValkyrienSkies/[email protected]
with:
serverType: ${{ matrix.serverType }}
19 changes: 19 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
build/
*.ipr
run/
*.iws
out/
*.iml
.gradle/
output/
bin/
libs/

.classpath
.project
.idea/
classes/
.metadata
.vscode
.settings
*.launch
Loading

0 comments on commit 209ef36

Please sign in to comment.