Skip to content

Commit

Permalink
Merge pull request #380 from steilerDev/dev
Browse files Browse the repository at this point in the history
stage for beta release
  • Loading branch information
Frank Steiler authored Oct 15, 2023
2 parents 0412764 + c22fab7 commit 45814c2
Show file tree
Hide file tree
Showing 45 changed files with 1,719 additions and 436 deletions.
53 changes: 37 additions & 16 deletions .github/actions/helper/prepare-semantic-release/action.yml
Original file line number Diff line number Diff line change
Expand Up @@ -17,10 +17,40 @@ runs:
- id: setup-dependencies
shell: bash
run: sudo apt-get install -y moreutils
- id: setup-release-rules
shell: bash
run: |
{
echo 'RELEASE_RULES<<EOF'
echo '[
{ "type": "majorfeat", "release": "major" },
{ "type": "feat", "release": "minor" },
{ "type": "fix", "release": "patch" },
{ "type": "refactor", "release": "patch" },
{ "type": "perf", "release": "patch" },
{ "type": "test", "release": "patch" },
{ "type": "build", "release": "patch" },
{ "type": "ci", "release": "patch" },
{ "type": "chore", "release": "patch" },
{ "type": "docs", "release": "patch" },
{ "type": "no-release", "release": false },
{ "type": "style", "release": false }
]'
echo EOF
} >> "$GITHUB_ENV"
- id: setup-force-release
if: ${{ github.ref_name == 'dev' }}
shell: bash
run: |
{
echo 'RELEASE_RULES<<EOF'
echo $RELEASE_RULES | jq -c '. += [{"message": "**", "release": "patch"}]'
echo EOF
} >> "$GITHUB_ENV"
- id: setup-fs
shell: bash
run: |
mkdir ${{ inputs.release-dir }}
mkdir -p ${{ inputs.release-dir }}
cp ${{ github.action_path }}/package.json \
${{ github.action_path }}/package-lock.json \
Expand All @@ -39,22 +69,13 @@ runs:
"@semantic-release/commit-analyzer",
{
"preset": "conventionalcommits",
"releaseRules": [
{ "type": "majorfeat", "release": "major" },
{ "type": "feat", "release": "minor" },
{ "type": "fix", "release": "patch" },
{ "type": "refactor", "release": "patch" },
{ "type": "perf", "release": "patch" },
{ "type": "test", "release": "patch" },
{ "type": "build", "release": "patch" },
{ "type": "ci", "release": "patch" },
{ "type": "chore", "release": "patch" },
{ "type": "docs", "release": "patch" },
{ "type": "style", "release": false }
]
"releaseRules": ${{ env.RELEASE_RULES }}
}
]]' |\
sponge ${{ inputs.release-dir }}/.releaserc.json
]]' |\
sponge ${{ inputs.release-dir }}/.releaserc.json
echo "Wrote:"
cat ${{ inputs.release-dir }}/.releaserc.json
- id: setup-node
uses: actions/setup-node@v3
with:
Expand Down
5 changes: 5 additions & 0 deletions .vscode/icloud-photos-sync.cspell
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@ endfor
fcxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
foldered
fontawesome
foxt
Fqhjt
FVJQ
GBIE
Expand All @@ -61,6 +62,7 @@ materialx
mimo
mkdocs
mockfs
moreutils
ncipollo
Nerb
Nfrb
Expand All @@ -70,6 +72,7 @@ pano
parens
photoshop
photoslibrary
polystat
postbuild
prerequest
preshared
Expand All @@ -80,6 +83,7 @@ releaserc
rgba
RIPEMD
ritwickdey
Roboto
rootfs
SCNT
securitycode
Expand All @@ -92,6 +96,7 @@ Steiler
steilerdev
superfences
Symbolication
symlog
templating
testparam
testpassword
Expand Down
2 changes: 1 addition & 1 deletion .vscode/launch.json
Original file line number Diff line number Diff line change
Expand Up @@ -65,7 +65,7 @@
"--runInBand",
"--config", "jest.config.json",
//"--detectOpenHandles",
"test/unit/resources.validator.test.ts"
"test/unit/icloud.test.ts"
],
"env": {
"NODE_NO_WARNINGS": "1"
Expand Down
2 changes: 1 addition & 1 deletion CONTRIBUTING.md
Original file line number Diff line number Diff line change
Expand Up @@ -266,7 +266,7 @@ The content of the commit message body should contain:
This projects' development process loosely follows git-flow by (Vincent Driessen)[http://nvie.com/]. Feature development happens on the `dev` branch, however features don't get their own feature branch, due to the lack of contribution complexity at the moment.
External PRs should therefore target the dev branch. This will trigger unit tests, which need to pass, in order for merging to be considered. Every push to the `dev` branch will trigger a pre-release to the `nightly` channel on DockerHub and npm through [semantic-release](https://github.com/semantic-release/semantic-release).
External PRs should therefore target the dev branch. This will trigger unit tests, which need to pass, in order for merging to be considered. Every push to the `dev` branch will trigger a pre-release to the `nightly` channel on DockerHub and npm through [semantic-release](https://github.com/semantic-release/semantic-release). Unless all commits are of type `no-release`, at least a patch release is triggered on push.
Once the `dev` branch has reached a certain stage, changes can be staged for release on the `beta` channel. This happens through a Pull Request against the `beta` branch. This will trigger more thorough checks, including building all assets necessary for release, as well as E2E and API tests. Once the pull request has been merged, [semantic release](https://github.com/semantic-release/semantic-release) will perform a release to the `beta` channel on DockerHub and npm.
Expand Down
4 changes: 4 additions & 0 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -134,6 +134,10 @@ Please also check out [open and known issues](https://github.com/steilerDev/iclo

Please check the [contributing guidelines](https://github.com/steilerDev/icloud-photos-sync/blob/main/CONTRIBUTING.md) to learn how to engage with this project.

## Acknowledgments

- Special thanks to [@foxt](https://foxt.dev/) for helping with reverse engineering some tricky parts of the iCloud API ([GSA](https://github.com/steilerDev/icloud-photos-sync/issues/363) & [ADP](https://github.com/steilerDev/icloud-photos-sync/issues/202)) - check out his [iCloud.js](https://github.com/foxt/icloud.js) project in case you need to access other aspects of iCloud

### Release Workflow

<p align="center">
Expand Down
4 changes: 4 additions & 0 deletions app/build/schema.ts
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,10 @@ const schemaList = [
typeName: `SigninResponse`,
srcPath: `src/lib/resources/network-types.ts`,
allowAdditionalProperties: true,
}, {
typeName: `SigninInitResponse`,
srcPath: `src/lib/resources/network-types.ts`,
allowAdditionalProperties: true,
}, {
typeName: `ResendMFADeviceResponse`,
srcPath: `src/lib/resources/network-types.ts`,
Expand Down
2 changes: 1 addition & 1 deletion app/eslint.config.json
Original file line number Diff line number Diff line change
Expand Up @@ -20,7 +20,7 @@
"quote-props": ["error", "as-needed"],
"indent": ["error", 4],
"eol-last": ["error", "never"],
"new-cap": ["error", { "newIsCapExceptions": ["iCloud", "iCloudPhotos", "iCPSError", "default", "iCPSInfluxLineProtocolPoint"], "capIsNewExceptions": ["TTL", "BASE"] }],
"new-cap": ["error", { "newIsCapExceptions": ["iCloud", "iCloudCrypto", "iCloudPhotos", "iCPSError", "default", "iCPSInfluxLineProtocolPoint"], "capIsNewExceptions": ["TTL", "BASE"] }],
"tsdoc/syntax": "warn",
"no-negated-condition": "off",
"no-unused-vars": "off",
Expand Down
2 changes: 1 addition & 1 deletion app/knip.config.jsonc
Original file line number Diff line number Diff line change
@@ -1,5 +1,5 @@
{
"entry": ["test/**/*.test.ts", "src/main.ts", "build/cli-reference.ts", "build/schema.ts", "build/package.ts"],
"entry": ["test/unit/*", "test/api/*", "src/main.ts", "build/cli-reference.ts", "build/schema.ts", "build/package.ts"],
"project": ["**/*.ts"],
"ignoreDependencies": [
"@typescript-eslint/eslint-plugin", // Loaded by eslint.config.json
Expand Down
Loading

0 comments on commit 45814c2

Please sign in to comment.