version: 2.1 orbs: # adds orbs to your configuration jira: circleci/jira@1.0.5 # invokes the Jira orb, making its commands accessible jobs: build: working_directory: ~/Cider docker: - image: circleci/node:16 steps: - checkout - run: name: Update Package Managers command: sudo npm update -g npm yarn - restore_cache: name: Restore Yarn Package Cache keys: - yarn-packages-{{ checksum "cider-yarn.lock" }} - run: name: Install Dependencies command: yarn install --frozen-lockfile --cache-folder ~/.cache/yarn - save_cache: name: Save Yarn Package Cache key: yarn-packages-{{ checksum "cider-yarn.lock" }} paths: - ~/.cache/yarn - run: name: Install system build dependencies command: | sudo apt-get update -y sudo apt-get install -y dpkg fakeroot wine64 sudo dpkg --add-architecture i386 sudo apt-get update -y sudo apt-get install -y wine32 - run: name: Append Commit BuildID to Version command: yarn circle:append-bid - run: name: Generate Builds (Linux) command: yarn dist -l -p never post-steps: - jira/notify - run: name: Generate Builds (Windows) command: yarn dist -w --x64 -p never post-steps: - jira/notify - run: name: Generate Builds (Winget) command: yarn winget -p never post-steps: - jira/notify - run: name: Move Build Files command: | mkdir ~/Cider/dist/artifacts/ mv ~/Cider/dist/*.exe ~/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/*.yml ~/Cider/dist/artifacts mv ~/Cider/dist/*.blockmap ~/Cider/dist/artifacts - store_artifacts: path: ~/Cider/dist/artifacts publish-github-release: docker: - image: cibuilds/github:0.10 steps: - attach_workspace: at: ~/Cider/dist/artifacts - run: name: "Publish Release on GitHub" command: | ghr -t ${GITHUB_TOKEN} -u ${CIRCLE_PROJECT_USERNAME} -r "cider-releases" -c ${CIRCLE_SHA1} -n "${CIRCLE_BRANCH} build #${CIRCLE_BUILD_NUM}" -b "This release is made automatically from [this commit](https://github.com/ciderapp/Cider/commit/${CIRCLE_SHA1}) using [this CircleCI job.](${CIRCLE_BUILD_URL})" ~/Cider/dist/artifacts