Skip to content

Commit 8274487

Browse files
committed
Initial commit
0 parents  commit 8274487

38 files changed

+2341
-0
lines changed

.gitattributes

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
# Auto detect text files and perform LF normalization
2+
* text=auto
Lines changed: 78 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,78 @@
1+
name: Build Repo Listing
2+
3+
env:
4+
listPublishDirectory: Website
5+
pathToCi: ci
6+
7+
on:
8+
workflow_dispatch:
9+
workflow_run:
10+
workflows: [Build Release]
11+
types:
12+
- completed
13+
release:
14+
types: [published, created, edited, unpublished, deleted, released]
15+
16+
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages
17+
permissions:
18+
contents: read
19+
pages: write
20+
id-token: write
21+
22+
# Allow one concurrent deployment
23+
concurrency:
24+
group: "pages"
25+
cancel-in-progress: true
26+
27+
jobs:
28+
29+
# Build the VPM Listing Website and deploy to GitHub Pages
30+
build-listing:
31+
name: build-listing
32+
environment:
33+
name: github-pages
34+
url: ${{ steps.deployment.outputs.page_url }}
35+
runs-on: ubuntu-latest
36+
steps:
37+
38+
# Checkout Local Repository
39+
- name: Checkout Local Repository
40+
uses: actions/checkout@v4
41+
42+
# Checkout Automation Repository without removing prior checkouts
43+
- name: Checkout Automation Repository
44+
uses: actions/checkout@v4
45+
with:
46+
repository: vrchat-community/package-list-action
47+
path: ${{ env.pathToCi }}
48+
clean: false
49+
50+
# Load cached data from previous runs
51+
- name: Restore Cache
52+
uses: actions/cache@v4
53+
with:
54+
path: |
55+
${{ env.pathToCi }}/.nuke/temp
56+
~/.nuget/packages
57+
key: ${{ runner.os }}-${{ hashFiles('**/global.json', '**/*.csproj') }}
58+
59+
# Build Package Version Listing with Nuke
60+
- name: Build Package Version Listing
61+
run: ${{ env.pathToCi }}/build.cmd BuildRepoListing --root ${{ env.pathToCi }} --list-publish-directory $GITHUB_WORKSPACE/${{ env.listPublishDirectory }} --current-package-name ${{ vars.PACKAGE_NAME }}
62+
env:
63+
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
64+
65+
# Prepare for GitHub Pages deployment
66+
- name: Setup Pages
67+
uses: actions/configure-pages@v5
68+
69+
# Upload the VPM Listing Website to GitHub Pages artifacts
70+
- name: Upload Pages Artifact
71+
uses: actions/upload-pages-artifact@v3
72+
with:
73+
path: ${{ env.listPublishDirectory }}
74+
75+
# Deploy the uploaded VPM Listing Website to GitHub Pages
76+
- name: Deploy to GitHub Pages
77+
id: deployment
78+
uses: actions/deploy-pages@v4

.github/workflows/release.yml

Lines changed: 87 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,87 @@
1+
name: Build Release
2+
3+
on:
4+
workflow_dispatch:
5+
6+
jobs:
7+
8+
# Validate Repository Configuration
9+
config:
10+
runs-on: ubuntu-latest
11+
outputs:
12+
config_package: ${{ steps.config_package.outputs.configPackage }}
13+
steps:
14+
15+
# Ensure that required repository variable has been created for the Package
16+
- name: Validate Package Config
17+
id: config_package
18+
run: |
19+
if [ "${{ vars.PACKAGE_NAME }}" != "" ]; then
20+
echo "configPackage=true" >> $GITHUB_OUTPUT;
21+
else
22+
echo "configPackage=false" >> $GITHUB_OUTPUT;
23+
fi
24+
25+
# Build and release the Package
26+
# If the repository is not configured properly, this job will be skipped
27+
build:
28+
needs: config
29+
runs-on: ubuntu-latest
30+
permissions:
31+
contents: write
32+
env:
33+
packagePath: Packages/${{ vars.PACKAGE_NAME }}
34+
if: needs.config.outputs.config_package == 'true'
35+
steps:
36+
37+
# Checkout Local Repository
38+
- name: Checkout
39+
uses: actions/checkout@3df4ab11eba7bda6032a0b82a6bb43b11571feac
40+
41+
# Get the Package version based on the package.json file
42+
- name: Get Version
43+
id: version
44+
uses: zoexx/github-action-json-file-properties@b9f36ce6ee6fe2680cd3c32b2c62e22eade7e590
45+
with:
46+
file_path: "${{ env.packagePath }}/package.json"
47+
prop_path: "version"
48+
49+
# Configure the Environment Variables needed for releasing the Package
50+
- name: Set Environment Variables
51+
run: |
52+
echo "zipFile=${{ vars.PACKAGE_NAME }}-${{ steps.version.outputs.value }}".zip >> $GITHUB_ENV
53+
echo "unityPackage=${{ vars.PACKAGE_NAME }}-${{ steps.version.outputs.value }}.unitypackage" >> $GITHUB_ENV
54+
echo "version=${{ steps.version.outputs.value }}" >> $GITHUB_ENV
55+
56+
# Zip the Package for release
57+
- name: Create Package Zip
58+
working-directory: "${{ env.packagePath }}"
59+
run: zip -r "${{ github.workspace }}/${{ env.zipFile }}" .
60+
61+
# Build a list of .meta files for future use
62+
- name: Track Package Meta Files
63+
run: find "${{ env.packagePath }}/" -name \*.meta >> metaList
64+
65+
# Make a UnityPackage version of the Package for release
66+
- name: Create UnityPackage
67+
uses: pCYSl5EDgo/create-unitypackage@v1.2.3
68+
with:
69+
package-path: ${{ env.unityPackage }}
70+
include-files: metaList
71+
72+
# Make a release tag of the version from the package.json file
73+
- name: Create Tag
74+
id: tag_version
75+
uses: rickstaa/action-create-tag@88dbf7ff6fe2405f8e8f6c6fdfd78829bc631f83
76+
with:
77+
tag: "${{ env.version }}"
78+
79+
# Publish the Release to GitHub
80+
- name: Make Release
81+
uses: softprops/action-gh-release@de2c0eb89ae2a093876385947365aca7b0e5f844
82+
with:
83+
files: |
84+
${{ env.zipFile }}
85+
${{ env.unityPackage }}
86+
${{ env.packagePath }}/package.json
87+
tag_name: ${{ env.version }}

.gitignore

Lines changed: 72 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,72 @@
1+
# This .gitignore file should be placed at the root of your Unity project directory
2+
#
3+
# Get latest from https://github.com/github/gitignore/blob/main/Unity.gitignore
4+
#
5+
/[Ll]ibrary/
6+
/[Tt]emp/
7+
/[Oo]bj/
8+
/[Bb]uild/
9+
/[Bb]uilds/
10+
/[Ll]ogs/
11+
/[Uu]ser[Ss]ettings/
12+
13+
# MemoryCaptures can get excessive in size.
14+
# They also could contain extremely sensitive data
15+
/[Mm]emoryCaptures/
16+
17+
# Recordings can get excessive in size
18+
/[Rr]ecordings/
19+
20+
# Uncomment this line if you wish to ignore the asset store tools plugin
21+
# /[Aa]ssets/AssetStoreTools*
22+
23+
# Autogenerated Jetbrains Rider plugin
24+
/[Aa]ssets/Plugins/Editor/JetBrains*
25+
26+
# Visual Studio cache directory
27+
.vs/
28+
29+
# Gradle cache directory
30+
.gradle/
31+
32+
# Autogenerated VS/MD/Consulo solution and project files
33+
ExportedObj/
34+
.consulo/
35+
*.csproj
36+
*.unityproj
37+
*.sln
38+
*.suo
39+
*.tmp
40+
*.user
41+
*.userprefs
42+
*.pidb
43+
*.booproj
44+
*.svd
45+
*.pdb
46+
*.mdb
47+
*.opendb
48+
*.VC.db
49+
50+
# Unity3D generated meta files
51+
*.pidb.meta
52+
*.pdb.meta
53+
*.mdb.meta
54+
55+
# Unity3D generated file on crash reports
56+
sysinfo.txt
57+
58+
# Builds
59+
*.apk
60+
*.aab
61+
*.unitypackage
62+
*.app
63+
64+
# Crashlytics generated file
65+
crashlytics-build.properties
66+
67+
# Packed Addressables
68+
/[Aa]ssets/[Aa]ddressable[Aa]ssets[Dd]ata/*/*.bin*
69+
70+
# Temporary auto-generated Android Assets
71+
/[Aa]ssets/[Ss]treamingAssets/aa.meta
72+
/[Aa]ssets/[Ss]treamingAssets/aa/*

Assets/.gitkeep

Whitespace-only changes.

CHANGELOG.md

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1 @@
1+


LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2025 KOZ39
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

Packages/.gitignore

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,2 @@
1+
/*/
2+
!dev.koz39.icon-generator

Packages/dev.koz39.icon-generator/Editor.meta

Lines changed: 8 additions & 0 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

0 commit comments

Comments
 (0)