This document is meant for SoundCleod maintainers.
make release
- Check if everything looks good
git push origin master --tags
make update-website
- Go to GitHub releases https://github.com/salomvary/soundcleod/releases
- Edit the draft release and copy the changes from CHANGELOG.md
- Publish the release
- Bump the version with
cd app && npm version prerelease --preid pre ---no-git-tag-version
and commit the changes
- Go to https://github.com/GitbookIO/nuts
- Click the "deploy to Heroku" button
- Enter GitHub repo in
username/repo
format - Generate token here (leave all permissions off): https://github.com/settings/tokens
- API username and password will be used for accessing Nuts' own internal API
- Verify if Nuts is working by going to https://app-name.herokuapp.com/
- Add a GitHub webhook here https://github.com/username/repo/settings/hooks/new
- Set
GITHUB_SECRET
to a random string here: https://dashboard.heroku.com/apps/app-name/settings - Payload URL: https://app-name.herokuapp.com/refresh
- Secret: enter the random string from above
- Choose "Release published in a repository" event
- Set
- Clone the Nuts repo locally: https://github.com/GitbookIO/nuts
- Add the Heroku Git remote:
heroku git:remote --app soundcleod-updates
git push heroku master
Start with opening Keychain Access.
Creating a certificate:
- Keychain Access menu > Certificate Assistant > Create a certificate...
- Enter your name (or whatever you want)
- Identity Type: Self Signed Root
- Certificate Type: Code Signing
- Continue, Done
Overriding the certificate trust levels:
- Open the certificate (double click)
- Expand "> Trust"
- Set "Code Signing" to "Always Trust"
- Close the certificate to save it
- Verify with
security find-identity -v -p codesigning
Importing a certificate:
- File > Import items
- Select the certificate file
- Override trust levels as specified above
Exporting a macOS certificate for signing a Windows application:
- Find the certificate in Keychain Access
- Right click -> Export
- Choose .p12 format
- Add a strong password
This is required for automatically publishing releases to GitHub.
- Create a new personal access token on GitHub
- Only enable
public_repo
permission
- Only enable
- Encrypt the token for AppVeyor here
- Update
environment.GH_TOKEN.secure
with the token inappveyor.yml
- Update the token in
.travis.yml
withtravis encrypt --add env GH_TOKEN=<the token>
(install the Travis Gem first withgem install travis
) - Commit and push both
.travis.yml
andappveyor.yml
- Export the certificate as
codesign-certificate.p12
- Encode file to base64 (macOS:
base64 -i codesign-certificate.p12 | pbcopy
, Linux:base64 codesign-certificate.p12 > codesign-certificate.txt
). - Set
CSC_LINK
andCSC_KEY_PASSWORD
environment variables. The base64 encoded value goes intoCSC_LINK
without change.
brew install rbenv
rbenv install 2.3.3 # install latest ruby
rbenv local 2.3.3
ruby --version
make run
See more in GitHub Pages documentation.