aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--.travis.yml15
-rw-r--r--README.md23
-rw-r--r--appveyor.yml11
-rw-r--r--build-helpers/notarize.js2
-rw-r--r--package-lock.json2
-rw-r--r--package.json2
6 files changed, 45 insertions, 10 deletions
diff --git a/.travis.yml b/.travis.yml
index 7579878b7..29d31c4a8 100644
--- a/.travis.yml
+++ b/.travis.yml
@@ -12,7 +12,7 @@ matrix:
12 - libxkbfile-dev 12 - libxkbfile-dev
13 - rpm 13 - rpm
14 - os: osx 14 - os: osx
15 if: branch = release 15 if: branch IN (nightly, release)
16 osx_image: xcode11 16 osx_image: xcode11
17 17
18language: node_js 18language: node_js
@@ -22,6 +22,7 @@ branches:
22 only: 22 only:
23 - develop 23 - develop
24 - release 24 - release
25 - nightly
25cache: npm 26cache: npm
26 27
27before_install: 28before_install:
@@ -34,6 +35,14 @@ before_script:
34script: 35script:
35 - | 36 - |
36 if [ $TRAVIS_BRANCH == "release" ]; then 37 if [ $TRAVIS_BRANCH == "release" ]; then
37 travis_retry travis_wait 100 npm run build 38 travis_retry travis_wait 100 npm run build
39 fi
40 - |
41 if [ $TRAVIS_BRANCH == "nightly" ]; then
42 npm version prerelease --preid=nightly -m "%s [skip ci]"
43 travis_retry travis_wait 100 npm run build -- --publish always -c.publish.provider=github -c.publish.owner=getferdi -c.publish.repo=nightlies
44 if [ $TRAVIS_OS_NAME == "osx" ]; then
45 git remote add nightly https://${GH_TOKEN}@github.com/getferdi/ferdi.git > /dev/null 2>&1
46 git push --quiet --set-upstream nightly HEAD:nightly >/dev/null 2>&1
47 fi
38 fi 48 fi
39
diff --git a/README.md b/README.md
index 4428babc1..1d68601a5 100644
--- a/README.md
+++ b/README.md
@@ -282,18 +282,33 @@ Deliverables will be available in the `out` folder.
282 282
283### Release 283### Release
284 284
285Create a new [draft release](https://github.com/getferdi/ferdi/releases/new) that targets the `release` branch, then:
286
287```bash
288$ git checkout develop && git pull
289$ git checkout release
290$ git submodule update --remote --force
291$ git add .
292$ git commit -m "Update submodules"
293$ git merge --no-ff develop
294$ git push
295```
296
297Once the draft release assets are uploaded (13 assets), publish the release. The last commit of the `release` branch will be tagged. You can then merge `release` into `master` and back into `develop` if needed.
298
299#### Nightly
300
285```bash 301```bash
286$ git checkout develop && git pull 302$ git checkout develop && git pull
303$ git checkout nightly
287$ git submodule update --remote --force 304$ git submodule update --remote --force
288$ git add . 305$ git add .
289$ git commit -m "Update submodules" 306$ git commit -m "Update submodules"
290$ git checkout master
291$ git merge --no-ff develop 307$ git merge --no-ff develop
292$ git tag v5.3.4-beta.4 308$ git push
293$ git push --tags
294``` 309```
295 310
296When pushing a new tag, the CI builds will create a draft GitHub release and upload the deliverables in the draft release assets. Wait for all the assets to be uploaded before publishing the draft release. 311The draft release and assets will be available in [getferdi/nightlies releases](https://github.com/getferdi/nightlies/releases). You need to manually publish the draft release as a pre-release for now.
297 312
298## Contributors ✨ 313## Contributors ✨
299 314
diff --git a/appveyor.yml b/appveyor.yml
index acdd94e13..d6e909f9c 100644
--- a/appveyor.yml
+++ b/appveyor.yml
@@ -2,6 +2,7 @@ version: build-{build}
2branches: 2branches:
3 only: 3 only:
4 - release 4 - release
5 - nightly
5skip_tags: true 6skip_tags: true
6skip_branch_with_pr: true 7skip_branch_with_pr: true
7 8
@@ -20,3 +21,13 @@ before_build:
20 21
21build_script: 22build_script:
22 - appveyor-retry npm run build 23 - appveyor-retry npm run build
24
25for:
26-
27 branches:
28 only:
29 - nightly
30 before_build:
31 - npm version prerelease --preid=nightly --no-git-tag-version
32 build_script:
33 - appveyor-retry npm run build -- --publish always -c.publish.provider=github -c.publish.owner=getferdi -c.publish.repo=nightlies
diff --git a/build-helpers/notarize.js b/build-helpers/notarize.js
index fc463f749..cb83808ad 100644
--- a/build-helpers/notarize.js
+++ b/build-helpers/notarize.js
@@ -2,7 +2,7 @@ const { notarize } = require("electron-notarize");
2 2
3exports.default = async function notarizing(context) { 3exports.default = async function notarizing(context) {
4 const { electronPlatformName, appOutDir } = context; 4 const { electronPlatformName, appOutDir } = context;
5 if (electronPlatformName !== "darwin" || process.env.TRAVIS_BRANCH !== 'release') { 5 if (electronPlatformName !== "darwin" || (process.env.TRAVIS_BRANCH !== 'release' && process.env.TRAVIS_BRANCH !== 'nightly')) {
6 return; 6 return;
7 } 7 }
8 8
diff --git a/package-lock.json b/package-lock.json
index 74e7d5a5c..0e43558a5 100644
--- a/package-lock.json
+++ b/package-lock.json
@@ -1,6 +1,6 @@
1{ 1{
2 "name": "ferdi", 2 "name": "ferdi",
3 "version": "5.5.0", 3 "version": "5.5.1-nightly.13",
4 "lockfileVersion": 1, 4 "lockfileVersion": 1,
5 "requires": true, 5 "requires": true,
6 "dependencies": { 6 "dependencies": {
diff --git a/package.json b/package.json
index 9c92036da..281eb0712 100644
--- a/package.json
+++ b/package.json
@@ -3,7 +3,7 @@
3 "productName": "Ferdi", 3 "productName": "Ferdi",
4 "desktopName": "ferdi.desktop", 4 "desktopName": "ferdi.desktop",
5 "appId": "com.kytwb.ferdi", 5 "appId": "com.kytwb.ferdi",
6 "version": "5.5.0", 6 "version": "5.5.1-nightly.13",
7 "description": "Messaging app for WhatsApp, Slack, Telegram, HipChat, Hangouts and many many more.", 7 "description": "Messaging app for WhatsApp, Slack, Telegram, HipChat, Hangouts and many many more.",
8 "copyright": "kytwb", 8 "copyright": "kytwb",
9 "main": "index.js", 9 "main": "index.js",