Skip to content

Commit

Permalink
New Buildscript (#434)
Browse files Browse the repository at this point in the history
/* Category: */
[INTERNAL]

/* Fixup for previous commits' bad syntax: */
[FIXUP]
[[fixes]]
sha = "4f966073890315ae0eb103b6011cdac7e6e960c0"
newTitle = "Update GregTech CEu to v2.7.4"
newBody = """
  [COMBINE]
  commits = ["bd58b9072f45d647734ae66168cbd27bf9b2f220"]
  [COMBINE]
  """

[[fixes]]
sha = "bd58b9072f45d647734ae66168cbd27bf9b2f220"
newTitle = "Update GT and Related Mods for 1.7"
newBody = """
  [EXPAND]
  [[messages]]
    messageTitle = \"Update GT to 2.7.4\"
    messageBody = \"\"\"
      [BREAKING]
      [DETAILS]
      details = [
        \\"**Lots of Recipes have been moved to the Assembly Line, and now require Assembly Line Research.**\\",
        \\"Adds Assembly Line Research\\",
        \\"Adds ME Hatches and Buses, for combining Multiblocks with AE Networks\\",
        \\"Adds EU Multiblock Power Storage\\",
        \\"Adds Multiblock Transformer and Laser Power Transfer\\",
        \\"Adds Long Distance Pipes\\",
        \\"Reworked & Improved Multiblock UIs\\",
        \\"Creating Waypoints in the Prospector\\",
        \\"Fixing many bugs\\",
        \\"And many more!\\"
      ]
      [DETAILS]
    \"\"\"
  [EXPAND]
  """

[[fixes]]
sha = "1a40bd87f9c648429059c77a90470e55e0e39c5e"
newTitle = "Update QB Jsons and Lang"
newBody = "[SKIP]"

[[fixes]]
sha = "bcae6f4eebf5616766edcc3e735df7cbf6276440"
newTitle = "Russian Content Tweaker Translation (#429)"
newBody = "[FEATURE]"

[[fixes]]
sha = "ca64e658083d5ff41f15ce37fe817842018031d3"
newTitle = "Update NAE2 to v1.3.1 (#424)"
newBody = "[BUG]"

[[fixes]]
sha = "1a35ae82d9830c5444c5634d93268e3b857f07bd"
newTitle = "Fix Description of The First Tier Two Circuits Quest"
newBody = "[QB]"

[[fixes]]
sha = "c66f5428818e02051b77d84fa01792bf2a6d9dcf"
newTitle = "Make Neeve Quest Ignore NBT"
newBody = "[QB]"

[[fixes]]
sha = "5b5d13710abe0f96c41ba4a3505969c0a98e23bc"
newTitle = "Update and Rewrite Mixer Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "342d988e322a45e0d141227c9aa34ec8e53663e7"
newTitle = "Remove Mention of HV Batteries in Iron Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "d037ee5f466cec066fac1d14a762a377426a032d"
newTitle = "Remove Reward for Bending Machine Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "03d61c8d5fbaa0439fc823b5aef3a4859b17a444"
newTitle = "Move Multiblock Machine Previews Quest"
newBody = """
[QB]
[DETAILS]
details = [\"Moved From `The Beginning` to `Genesis`\"]
[DETAILS]
"""

[[fixes]]
sha = "a52b91d97ac6849fe74623e3cc08362eb3ad99fa"
newTitle = "Change Mold Quest Task from Ball Mold -> Rotor Mold"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "fcb48d4bc9f27058c6a2dcca7bf813f3d7f6a6d9"
newTitle = "Mention how to Mute Machines in Steam Machines Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "f59eecad41745f65348da88a3f4c057300459782"
newTitle = "Adjust Steam Dynamo Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "02eaf67bd168eb11a7a71f4d346eb591841d0af3"
newTitle = "Specify that Alloy Smelter is used to make Rubber Sheets"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "a988d2df30e4d01b973870cc85350962a9125f5c"
newTitle = "Fix Grammar Errors in 'From Ingots to Wires' Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "8df9f6e3180323946cc6553cd0fb5e1e96f0ac03"
newTitle = "Add Molds Quest to Genesis, Make Glass Quest"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "5d51fda1c6740edc5021657f90f6ecd1de954d29"
newTitle = "Make Drawer Quest Accept Either Task"
newBody = "[QB]\n[HM]"

[[fixes]]
sha = "a02ef21fbae24df59e5fa9a5ef4640752baf835f"
newTitle = "New Data Textures (#419)"
newBody = "[FEATURE]"

[[fixes]]
sha = "758f7e704ca8b13031f7ca859e6bc9c0f0a9e786"
newTitle = "Fix DML Multiblock Recipes"
newBody = "[BUG]"

[[fixes]]
sha = "5671bca7fe7b685ac3495ef2497c3711a0baa2a0"
newTitle = "Improve Mac/Linux Pack Mode Switcher"
newBody = "[INTERNAL]"

[[fixes]]
sha = "5538fe4524dcb0b64a333b756bfeeec34e12661c"
newTitle = "Enable shufflemode on main menu (#414)"
newBody = "[FEATURE]"

[[fixes]]
sha = "644491a9f53c0ee300dbaf345f23e5b3f08b3c8a"
newTitle = "Release 1.6.1a"
newBody = "[NO CATEGORY]"
[FIXUP]

/* Description: */
TODO:
- [x] Changelog Generation
  - [x] Decomp Expand
  - [x] Decomp Details
  - [x] Add Commit Details to Mod Changes
  - [x] Allow changing of dir
  - [x] Catch parsing errors
- [x] Move to TOML instead of YAML
- [x] GHA Workflows
  - [x] Split workflows into called and callers (See https://docs.github.com/en/actions/using-workflows/reusing-workflows)
  - [x] Create workflow to generate Release Commit + Changelog, changelog in another branch
  - [x] Create workflow to grab Changelog from another branch, then deploy
  - [x] Create workflow to combine previous two
  - [x] Create workflow to test new commits' body syntax
  - [x] Split workflows into jobs
- [x] Cleanup Code
  - [x] Split code into multiple files 
- [x] Document Code (JS Docs)
- [x] CONTRIBUTING.md Documentation on workflows, and on templates
- [x] Remove changelog files

New TODO:
- [x] Make workflow to update modlist
- [x] Add modlist updating to release commit workflow, split into jobs
- [x] https://discord.com/channels/927050775073534012/1131899853052575785/1162897825173086299
- [ ] Update Documentation

/* Commits: */
* Create releasecommit.yml

* Update releasecommit.yml

* Update setup-node & various tasks to v3, improve .gitignore

* Working method to add version to Issue Templates

Produces weird artifacts...

* Revert "Working method to add version to Issue Templates"

This reverts commit f63480e.

* WIP method to update release content, using templates

* Finish Release Commit Npx Gulp Task

* Update Files

* Allow for non-release commits

* Actually update version.txt

* Remove unneded env in updateqb.yml

* Fix releasecommit.yml

* Remove random patches config file transforming in `version.ts`

* Remove note about regex

* Add tag to release commits

* Allow changelog task to compare with any commit, seperate changelog task

* Add generation for CF changelog, begin detailed changelog

* Add new formatted commitList

* test change to CHANGELOG.md

* Fix HTML file formatting; test new MD file formatting

* Another HTML File formatting fix

* New formatting logic

* cleanup quest transform npx task

* Cleanup

* Progress

* Small Fixes

* Fix formatting

* Fix commits appearing twice

* Changelog Categories

* Remove Tags from Commit Messages

* New Storage System for ChangelogSections

* Fix Formatting

* Progress of version info for changed mods

* Allow external deps

* Cleanup Version,  Fix Crash, temp change compare to 1.5.2...1.6

* Cleanup code

* Cleanup Code, use templates instead of ifs

* Expand Decomp, fix some commits not being added

* Testing time

* What the changelog looks like

* Test

* Sort logs, with newest on top. Sort Commit Log

* Transform markdown entries into HTML at end

* Remove section matter npm package

* Test

* Update changelog

* Test nested Details

* update changelog files

* Begin Commit SHAs of Mod Changes Section

Just need to add support, in formatting funct, for multi commits

* Test new formatting

* Formatting Test

* Allow for multi commits in changelog messages

* Fix not showing multi commits

* Fix formatting

* formatting

* Add Performance Category

* Remove debug messages + date in changelog messages

* sort multi authors

* Allow for commits to go in multi categories

* Start Cleanup Code

* Allow changing of output dir

* More Cleanup + Create Post 1.7 Version

* Catch parsing errors of manifest.json

View the magical changelog, from the first file commit, to this commit!

* Catch errors in Expand Task, more cleanup

* Catch parsing errors in Details task

* Make UpdateQB Task not return an error if no changes

* Remove Comma Expressions

* Catch edge case parsing errors, improve error descriptions

* Cleanup parsing errors code, display original body

* TOML Test

* TOML

* Delete test.txt

* Update Post 1.7 Version

* Test no error qb task

* Test

* cleanup updateqb.yml

* Formatting

* Update Changelogs (after rebase to TOML syntax)

* Fix Deploy GH Task

* Remove uneeded code

* Allow for fetching/making changelog in build task

* Fix Changelog Fetching

* Change Changelog Output Dir to build root dir

* Add new features to Github Release Task

* Combine Version & GitHub_TAG

* Create GHA files, improve TS code (#446)

* Setup Action

* test

* test again

* Update releasecommit.yml

* Move setup.yml

* Update releasecommit.yml

* Update releasecommit.yml

* Update setup.yml

* Update releasecommit.yml

* Update deploygh.yml

* Delete .github/workflows/setup.yml

* Create build-pack.yml

* Update build-pack.yml

* test

* Update build-pack.yml

* more test

* Stupid me using download job for upload

* more testing...

* Update build-pack.yml

* Update build-pack.yml

* Update build-pack.yml

* Update build-pack.yml

* Create build-pack-manual.yml

* Move file

* Revert "Move file"

This reverts commit 506a523.

* Update build-pack-manual.yml

* Update build-pack-manual.yml

* Create deploy.yml

* Delete .github/workflows/deploygh.yml

* Rename deploy.yml to deploygh.yml

* Update deploygh.yml

* Create deploy.yml

* Update deploy.yml

* Update deploy.yml

* Update deploy.yml

* Update deploygh.yml

* Remove debug logging

* Update build-pack.yml

* Delete .github/workflows/build-pack-manual.yml

* Update deploygh.yml

* Update build-pack.yml

* Update deploy.yml

* Update deploygh.yml

* Update deploygh.yml

* Update build-pack.yml

* Update build-pack.yml

* Update deploy.yml

* Update build-pack.yml

* Update deploygh.yml

* Update deploy.yml

* Update releasecommit.yml

* Release 5.0

* Update releasecommit.yml

* Release 6.0

* Update Issue, Server and RP Config Files from Templates

* Update releasecommit.yml

* Release 7.0

* Add release title in changelog, remove more code

* Add link to full changelog, format release name

* Release 7.1

* Update deploy.yml

* Alpha Release 7.2

* Fix tags excaping, improve full changelog

* Release 7.3

* Add to CF Release, Cleanup Code

* Delete .github/workflows/deploycfrc.yml

* Update deploycf.yml

* Update deploy.yml

* Update gulpfile

* Alpha Release 8.0-alpha-1

* Update deploycf.yml

* Update deploycf.yml

* Fix Curseforge Changelog

* Beta Release 8.0-beta-2

* Update releasecommit.yml

* Rename build-pack.yml to buildpack.yml

* Update deploy.yml

* Add CF redirect

* Fix existing version detection

* Create releasedeploy.yml

* Update releasedeploy.yml

* Update releasedeploy.yml

* Release 8.0

* Update releasedeploy.yml

* Create test.yml

* Delete .github/workflows/test.yml

* Create makechangelog.yml

* Update makechangelog.yml

* Update and rename makechangelog.yml to createchangelog.yml

* Rename: MakeChangelog -> CreateChangelog

* Update createchangelog.yml

* Create releasechangelog.yml

* Update releasechangelog.yml

* Update createchangelog.yml

* Beta Release 9.0-beta-1

* Release 9.0

* Release 9.1

* Update releasechangelog.yml

* Alpha Release 9.1-alpha-1

* Remove extra versions

* Fix more changed version numbers

* Update Issue, Server and RP Config Files from Templates

* Update versions.txt

* Update Issue, Server and RP Config Files from Templates

* Update Post 1.7 Version

* Start writing more in CONTRIBUTING

* Add basic Table Of Contents structure, qb contributing

* test

* Fix wrong html tag

* Final Formatting

* Script contributing information + cleanup

* More Contribution Information

* Begin Maintainer Information

* Improve documentation, make submessages not include author/sha

* Finish Changelog Workflow Documentation

* Create structure

* Write section for create release commit workflow

* Provide a overview table of all keys

* Documentation on Deploy Task

* Artifacts information + start build pack documentation

* test new way to center elements

* Allow for Cutting Edge Build in build task

* Actually use release_type input in build task

* Finish Contributing information

* Remove changelog files

* JS documentation

* MMC zips + allow for build pack task to upload seperately

* test

* test selective artifact method, allow for selectively deploying

* Finish Buildscript (#457)

* mention contributing stuff in wiki

* Transform PR Tags in Message into links
  • Loading branch information
IntegerLimit committed Oct 20, 2023
1 parent 4f96607 commit fbd1584
Show file tree
Hide file tree
Showing 72 changed files with 4,179 additions and 783 deletions.
30 changes: 16 additions & 14 deletions .github/ISSUE_TEMPLATE/001-bug-report.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# DO NOT EDIT THIS FILE! EDIT THE TEMPlATES INSTEAD!
# See https://github.com/Nomi-CEu/Nomi-CEu/wiki/Part-1:-Contributing-Information#section-5-template-information!
name: Bug Report
description: "Crashes or unintended behaviors arising from Nomi CEu's mods, configurations, or custom scripts."
labels: bug
Expand All @@ -11,20 +13,20 @@ body:
label: Nomi CEu Version
description: The version of Nomi CEu you were using when this bug was encountered. If you do not know what it is, check the title of your instance window. If you do not see your version here, please update to the newest version of the pack, which currently is 1.6, or the newest alpha/beta, which currently is 1.6.1-beta-2.
options:
- "1.6.1a"
- "1.6.1-beta-4"
- "1.6.1-beta-3a"
- "1.6.1-beta-2"
- "1.6.1-alpha-1"
- "1.6"
- "1.5.2"
- "1.5.1"
- "1.5"
- "1.4.3"
- "1.4.2"
- "1.4.1a"
- "1.4"
- 1.6.1a
- 1.6.1-beta-4
- 1.6.1-beta-3a
- 1.6.1-beta-2
- 1.6.1-alpha-1
- 1.6
- 1.5.2
- 1.5.1
- 1.5
- 1.4.3
- 1.4.2
- 1.4.1a
- 1.4

validations:
required: true
- type: input
Expand Down
29 changes: 16 additions & 13 deletions .github/ISSUE_TEMPLATE/002-feature-request.yml
Original file line number Diff line number Diff line change
@@ -1,3 +1,5 @@
# DO NOT EDIT THIS FILE! EDIT THE TEMPlATES INSTEAD!
# See https://github.com/Nomi-CEu/Nomi-CEu/wiki/Part-1:-Contributing-Information#section-5-template-information!
name: Feature Request
description: Suggest an idea, including mod additions or addon scripts, for Nomi CEu.
labels: enhancement
Expand All @@ -11,19 +13,20 @@ body:
label: Nomi CEu Version
description: The version of Nomi CEu you are using as the basis for this feature request. If you do not know what it is, check the title of your instance window. If you do not see your version here, please update to the newest version of the pack, which currently is 1.6, or the newest alpha/beta, which currently is 1.6.1-beta-2.
options:
- "1.6.1a"
- "1.6.1-beta-4"
- "1.6.1-beta-3a"
- "1.6.1-beta-2"
- "1.6.1-alpha-1"
- "1.6"
- "1.5.2"
- "1.5.1"
- "1.5"
- "1.4.3"
- "1.4.2"
- "1.4.1a"
- "1.4"
- 1.6.1a
- 1.6.1-beta-4
- 1.6.1-beta-3a
- 1.6.1-beta-2
- 1.6.1-alpha-1
- 1.6
- 1.5.2
- 1.5.1
- 1.5
- 1.4.3
- 1.4.2
- 1.4.1a
- 1.4

validations:
required: true
- type: textarea
Expand Down
181 changes: 181 additions & 0 deletions .github/workflows/buildpack.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,181 @@
name: Build Pack

on:
workflow_dispatch:
inputs:
tag:
description: Tag to Checkout and Release.
required: false
type: string
release_type:
description: The Release Type.
required: true
type: choice
default: 'Release'
options:
- 'Release'
- 'Beta Release'
- 'Alpha Release'
- 'Cutting Edge Build'
changelog_url:
description: Where to download the Changelog File from. See CONTRIBUTING.md for more information.
required: false
type: string
changelog_cf_url:
description: Where to download the CF Changelog File from. See CONTRIBUTING.md for more information.
required: false
type: string
changelog_branch:
description: Branch to download changelog Files from. See CONTRIBUTING.md for more information.
required: false
type: string
compare_tag:
description: Tag to compare to. See CONTRIBUTING.md for more information.
required: false
type: string
separate_upload:
description: Whether to uploaed each zip (Client, Server, Lang & MMC) and the changelogs seperately. If not set, will just upload all six files into one artifact (Built Pack).
required: true
type: boolean

workflow_call:
inputs:
tag:
description: Tag to Checkout and Release.
required: false
type: string
release_type:
description: The Release Type.
required: false
default: Release
type: string
changelog_url:
description: Where to download the Changelog File from. See CONTRIBUTING.md for more information.
required: false
type: string
changelog_cf_url:
description: Where to download the CF Changelog File from. See CONTRIBUTING.md for more information.
required: false
type: string
changelog_branch:
description: Branch to download changelog Files from. See CONTRIBUTING.md for more information.
required: false
type: string
compare_tag:
description: Tag to compare to. See CONTRIBUTING.md for more information.
required: false
type: string
separate_upload:
description: Whether to uploaed each zip (Client, Server & Lang) and the changelogs seperately. If not set, will just upload all five files into one artifact (Built Pack).
required: false
default: false
type: boolean

jobs:
build:
name: Build Pack (${{ inputs.tag }})
runs-on: ubuntu-latest
env:
GITHUB_TAG: ${{ inputs.tag }}
RELEASE_TYPE: ${{ inputs.release_type }}

steps:
- name: Checkout Ref
uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ inputs.tag }}

- name: Restore Cached Files
uses: actions/cache@v3
id: cache
with:
path: |
~/.npm
./.cache
./tools/node_modules
key: ${{ runner.os }}-bunny-${{ hashFiles('**/.cache', '**/package-lock.json', '**/manifest.json') }}
restore-keys: ${{ runner.os }}-bunny-

- name: Setup NodeJS v16
uses: actions/setup-node@v3
with:
node-version: "16"
check-latest: true

- name: Setup NPM Packages
working-directory: ./tools
run: npm ci

- name: Check Environmental Variables
working-directory: ./tools
run: npx gulp check
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CURSEFORGE_PROJECT_ID: ${{ secrets.CURSEFORGE_PROJECT_ID }}
CURSEFORGE_API_TOKEN: ${{ secrets.CURSEFORGE_API_TOKEN }}
CFCORE_API_TOKEN: ${{ secrets.CFCORE_API_TOKEN }}

- name: Build Pack
working-directory: ./tools
run: npx gulp buildAll
env:
CFCORE_API_TOKEN: ${{ secrets.CFCORE_API_TOKEN }}
CHANGELOG_BRANCH: ${{ inputs.changelog_branch }}
CHANGELOG_URL: ${{ inputs.changelog_url }}
CHANGELOG_CF_URL: ${{ inputs.changelog_cf_url }}
COMPARE_TAG: ${{ inputs.compare_tag }}

- name: Zip Pack
working-directory: ./tools
run: npx gulp zipAll

- name: Upload All Files
uses: actions/upload-artifact@v3
if: ${{ !inputs.separate_upload }}
with:
name: Built Pack
path: |
./build/*.zip
./build/*.md
if-no-files-found: error

- name: Upload Client Zip
uses: actions/upload-artifact@v3
if: ${{ inputs.separate_upload }}
with:
name: Client Zip
path: ./build/*-client.zip
if-no-files-found: error

- name: Upload Server Zip
uses: actions/upload-artifact@v3
if: ${{ inputs.separate_upload }}
with:
name: Server Zip
path: ./build/*-server.zip
if-no-files-found: error

- name: Upload Lang Zip
uses: actions/upload-artifact@v3
if: ${{ inputs.separate_upload }}
with:
name: Lang Zip
path: ./build/*-lang.zip
if-no-files-found: error

- name: Upload MMC Zip
uses: actions/upload-artifact@v3
if: ${{ inputs.separate_upload }}
with:
name: MMC Zip
path: ./build/*-mmc.zip
if-no-files-found: error

- name: Upload Changelogs
uses: actions/upload-artifact@v3
if: ${{ inputs.separate_upload }}
with:
name: Changelogs
path: ./build/*.md
if-no-files-found: error
118 changes: 118 additions & 0 deletions .github/workflows/createchangelog.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,118 @@
name: Create Changelog

on:
workflow_dispatch:
inputs:
tag:
description: Tag to checkout.
required: true
release_type:
description: Release Type
type: choice
required: true
default: 'Release'
options:
- 'Release'
- 'Beta Release'
- 'Alpha Release'
compare_tag:
description: Tag to compare against. If not set, will use the tag before `Tag`.
required: false
branch:
description: Branch to push changelog to. If not set, changelog will just be uploaded as an artifact.
required: false
test:
description: Whether to test commits. If true, then any parsing errors will throw an error.
required: false
type: boolean
default: false

workflow_call:
inputs:
tag:
description: Tag to make changelog at.
type: string
required: false
release_type:
description: Release Type.
type: string
required: true
compare_tag:
description: Tag to compare against.
type: string
required: false
branch:
description: Branch to push changelog to. If not set, will not push. Will still be uploaded as artifact.
type: string
required: false
test:
description: Whether to test commits. If true, then any parsing errors will throw an error.
required: false
type: boolean
default: false

jobs:
deploy:
name: Create Changelog (${{ inputs.tag }})
runs-on: ubuntu-latest
env:
GITHUB_TAG: ${{ inputs.tag }}
RELEASE_TYPE: ${{ inputs.release_type }}
permissions:
contents: write
steps:
- name: Checkout Repo
uses: actions/checkout@v4
with:
fetch-depth: 0
ref: ${{ inputs.tag }}

- name: Restore Cached Files
uses: actions/cache@v3
id: cache
with:
path: |
~/.npm
./.cache
./tools/node_modules
key: ${{ runner.os }}-bunny-${{ hashFiles('**/.cache', '**/package-lock.json', '**/manifest.json') }}
restore-keys: ${{ runner.os }}-bunny-

- name: Setup NodeJS v16
uses: actions/setup-node@v3
with:
node-version: "16"
check-latest: true

- name: Setup NPM Packages
working-directory: ./tools
run: npm ci

- name: Create Changelog
working-directory: ./tools
run: npx gulp createChangelog
env:
CFCORE_API_TOKEN: ${{ secrets.CFCORE_API_TOKEN }}
COMPARE_TAG: ${{ inputs.compare_tag }}
TEST_CHANGELOG: ${{ inputs.test }}


- name: Commit and Push Changelog
if: ${{ inputs.branch }}
uses: "stefanzweifel/git-auto-commit-action@v4"
id: "commit-template"
with:
commit_message: "Upload Changelogs for Release ${{ inputs.tag }}"
commit_author: "github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>"
branch: ${{ inputs.branch }}
create_branch: true

- name: Upload Changelog
uses: actions/upload-artifact@v3
with:
name: Changelogs
path: |
./CHANGELOG.md
./CHANGELOG_CF.md
if-no-files-found: error

0 comments on commit fbd1584

Please sign in to comment.