
* localisation for mediaitem context menu * fixes removing songs issue #1442 * aids formatting no more * ok * stop [ci skip] * ci test * stop it * Prettified Code! * prettier update * chore: Prettified Code [ci skip] * shit * chore: Prettified Code [ci skip] * Update stale-issues.yml [ci skip] * Fix LastFM Filter Types * localisation for misc notifications * auto language on oobe * auto language on oobe * attempt at fixing #982 * and this just annoys me [ci skip] * crowdin action * oops * Remove from playlist icon * duplicate item prompt on adding songs to playlist * moved function outside to stop redefine [ci skip] * add playing class to album artwork * Play button for mediaitem-smarthints (#1445) * eslint moment * Update cider-chores.yml * some fixes * crowdin config * no * aa * please * please x2 * just to upload * Update Crowdin configuration file * fuck eslint * Source Update Workflow * Update crowdin translation image. * Implemented mediaSession API functions * Cleaned up playback function, commented mediaKeyFixes * Simplified wsapi renderer calls * Fix duration * Added check * Moved function call * More checks * autoplay persists on app launches * Fix [ci skip] * This is weird [ci skip] * version fix * Fix * aftermath of coding at 2am 200 days ago * Update config.yml [ci skip] * Small fix * Musickit error handling * chore: Updated i18n Source [ci skip] * Updated en_US.json to match cider 2 * chore: Updated i18n Source [ci skip] * plugins adjustment * chore: Prettified Code [ci skip] * Update config.yml * Stop music before close Co-authored-by: Core <core@coredev.uk> Co-authored-by: coredev-uk <coredev-uk@users.noreply.github.com> Co-authored-by: yazninja <yazlesean@gmail.com> Co-authored-by: Monochromish <79590499+Monochromish@users.noreply.github.com> Co-authored-by: vapormusic <vietanhfat@gmail.com> Co-authored-by: Maikiwi <stella@mai.kiwi> Co-authored-by: booploops <49113086+booploops@users.noreply.github.com> Co-authored-by: booploops <booploops@users.noreply.github.com>
194 lines
6.9 KiB
YAML
194 lines
6.9 KiB
YAML
version: 2.1
|
|
|
|
executors:
|
|
cider-ci:
|
|
docker:
|
|
- image: cimg/node:lts-browsers
|
|
working_directory: ~/Cider
|
|
|
|
orbs: # Add orbs to your configuration
|
|
jira: circleci/jira@1.0.5 # invokes the Jira orb, making its commands accessible
|
|
gh: circleci/github-cli@2.1
|
|
# The jobs for this project
|
|
jobs:
|
|
prepare-build:
|
|
executor: cider-ci
|
|
steps:
|
|
- checkout
|
|
- run:
|
|
command: |
|
|
sudo npm i -g pnpm
|
|
pnpm config set store-dir ~/.pnpm-store
|
|
- run:
|
|
name: Fetch Application Version
|
|
command: ./resources/version.sh || true
|
|
- restore_cache:
|
|
key: dependency-cache-{{ checksum "pnpm-lock.yaml" }}
|
|
- run:
|
|
name: Clear node_airtunes2 cache
|
|
command: rm -rf ~/.pnpm-store/tmp/cf5bc2de2629636ca224995234b8eaa1 || true
|
|
- run:
|
|
name: Install Node Dependencies
|
|
command: pnpm install --frozen-lockfile
|
|
- run:
|
|
name: TypeScript Compile
|
|
command: pnpm run build
|
|
- save_cache:
|
|
key: dependency-cache-{{ checksum "pnpm-lock.yaml" }}
|
|
paths:
|
|
- node_modules
|
|
- ~/.pnpm-store
|
|
- persist_to_workspace:
|
|
# Must be an absolute path, or relative path from working_directory. This is a directory on the container which is
|
|
# taken to be the root directory of the workspace.
|
|
root: .
|
|
# Must be relative path from root
|
|
paths:
|
|
- src
|
|
- node_modules
|
|
- build
|
|
- resources
|
|
- package.json
|
|
- winget.json # winget.json is a file that is generated by the winget package manager
|
|
- LICENSE
|
|
|
|
build-linux:
|
|
docker:
|
|
- image: electronuserland/builder:wine
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run:
|
|
name: Generate Builds (Linux)
|
|
command: yarn electron-builder -l -p never
|
|
post-steps:
|
|
- jira/notify
|
|
- persist_to_workspace:
|
|
root: .
|
|
paths:
|
|
- dist/*.deb
|
|
- dist/*.AppImage
|
|
- dist/*.snap
|
|
- dist/latest-linux.yml
|
|
|
|
build-windows:
|
|
docker:
|
|
- image: electronuserland/builder:wine
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run:
|
|
name: Generate Builds (Windows)
|
|
command: yarn electron-builder -w --x64 -p never
|
|
post-steps:
|
|
- jira/notify
|
|
- persist_to_workspace:
|
|
root: .
|
|
paths:
|
|
- dist/*.exe
|
|
- dist/Cider-Setup-*.exe.blockmap
|
|
- dist/latest.yml
|
|
|
|
build-winget:
|
|
docker:
|
|
- image: electronuserland/builder:wine
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/project
|
|
- run:
|
|
name: Generate Builds (Winget)
|
|
command: yarn electron-builder --win -c winget.json -p never
|
|
post-steps:
|
|
- jira/notify
|
|
- persist_to_workspace:
|
|
root: .
|
|
paths:
|
|
- dist/*.exe
|
|
- dist/Cider-Setup-winget-*.exe.blockmap
|
|
|
|
release:
|
|
executor: cider-ci
|
|
steps:
|
|
- attach_workspace:
|
|
at: ~/Cider/
|
|
- gh/install
|
|
- run:
|
|
name: Move Build Files
|
|
command: |
|
|
mkdir ~/Cider/dist/artifacts/
|
|
mv ~/Cider/dist/*.deb ~/Cider/dist/artifacts
|
|
mv ~/Cider/dist/*.AppImage ~/Cider/dist/artifacts
|
|
mv ~/Cider/dist/*.snap ~/Cider/dist/artifacts
|
|
mv ~/Cider/dist/*.exe ~/Cider/dist/artifacts
|
|
mv ~/Cider/dist/*.yml ~/Cider/dist/artifacts
|
|
mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts
|
|
- store_artifacts:
|
|
path: ~/Cider/dist/artifacts
|
|
- run:
|
|
name: Run Version Script
|
|
command: |
|
|
sudo chmod +x resources/version.sh && ./resources/version.sh || true
|
|
echo "export APP_VERSION=$(node -p -e 'require("./package.json").version')" >>$BASH_ENV
|
|
- run:
|
|
name: Publish Release
|
|
command: |
|
|
echo "Attempting to create release for Cider v${APP_VERSION} on the ${CIRCLE_BRANCH} branch.";
|
|
if [[ "${APP_VERSION}" = *"beta"* ]]; then
|
|
echo $'**Beta Release**\nA full changelog is unavailable, but you can view the branch comparison [here](https://github.com/ciderapp/cider/compare/stable...main).\nThese builds are considered bleeding edge, expect bugs and please do not use this as a representation of the fu ll app.\nOur full support disclaimer can be found [here](https://docs.cider.sh/support/disclaimer#support-nightly-beta-releases).' > release-notes.md
|
|
gh release create "v${APP_VERSION}" --prerelease --title "Cider Version ${APP_VERSION} (${CIRCLE_BRANCH})" --notes-file release-notes.md -R ciderapp/cider-releases ~/Cider/dist/artifacts/*.deb ~/Cider/dist/artifacts/*.AppImage ~/Cider/dist/artifacts/*.snap ~/Cider/dist/artifacts/*.exe ~/Cider/dist/artifacts/*.yml ~/Cider/dist/artifacts/*.blockmap
|
|
curl -s http://129.146.42.180/api/v1/github/sync/main
|
|
else
|
|
echo $'**Stable Release**\nA full changelog is unavailable, but you can view the branch comparison [here](https://github.com/ciderapp/cider/compare/stable...main).\nThese are the most stable builds we can provide. If you experience any issues, please report them [here](https://github.com/ciderapp/cider/issues/new).\nOur full support disclaimer can be found [here](https://docs.cider.sh/support/disclaimer#support-releases).' > release-notes.md
|
|
gh release create "v${APP_VERSION}" --title "Cider Version ${APP_VERSION} (${CIRCLE_BRANCH})" --notes-file release-notes.md -R ciderapp/cider-releases ~/Cider/dist/artifacts/*.deb ~/Cider/dist/artifacts/*.AppImage ~/Cider/dist/artifacts/*.snap ~/Cider/dist/artifacts/*.exe ~/Cider/dist/artifacts/*.yml ~/Cider/dist/artifacts/*.blockmap
|
|
curl -s http://129.146.42.180/api/v1/github/sync/stable
|
|
fi;
|
|
|
|
# Orchestrate our job run sequence
|
|
workflows:
|
|
build_and_release:
|
|
jobs:
|
|
- prepare-build:
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- stable
|
|
- steam-deck
|
|
- build-windows:
|
|
requires:
|
|
- prepare-build
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- stable
|
|
- steam-deck
|
|
- build-linux:
|
|
requires:
|
|
- prepare-build
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- stable
|
|
- steam-deck
|
|
- build-winget:
|
|
requires:
|
|
- prepare-build
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- stable
|
|
- steam-deck
|
|
- release:
|
|
requires:
|
|
- build-windows
|
|
- build-linux
|
|
- build-winget
|
|
filters:
|
|
branches:
|
|
only:
|
|
- main
|
|
- stable
|
|
- steam-deck
|