-
-
Notifications
You must be signed in to change notification settings - Fork 187
/
.travis.yml
41 lines (35 loc) · 1.81 KB
/
.travis.yml
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
# Travis CI configuration for building macOS binaries for ffsend.
# These macOS binaries are published on GitHub as release files.
#
# The main CI runs on GitLab CI at: https://gitlab.com/timvisee/ffsend/pipelines
language: rust
# Only build release jobs
stages:
- name: release
if: tag =~ ^v(\d+\.)*\d+$
jobs:
include:
- stage: release
rust: stable
os: osx
env: RUST_TARGET=x86_64-apple-darwin
cache: cargo
script:
# Create release binary for macOS
- echo "Creating release binary for $RUST_TARGET..."
- cargo build --target=$RUST_TARGET --release --verbose --all
- cp target/$RUST_TARGET/release/ffsend ./ffsend
# Download github-release binary
- wget https://github.com/tfausak/github-release/releases/download/1.2.4/github-release-osx.gz -O github-release.gz
- gunzip github-release.gz
- chmod a+x ./github-release
# Create the release, upload binary
- ./github-release release --token "$GITHUB_TOKEN" --owner timvisee --repo ffsend --tag "$TRAVIS_TAG" --title "ffsend $TRAVIS_TAG"
- ./github-release upload --token "$GITHUB_TOKEN" --owner timvisee --repo ffsend --tag "$TRAVIS_TAG" --file ./ffsend --name ffsend-$TRAVIS_TAG-macos
# TODO: disabled for now to throttle updates, manually enable on major release
# # Update homebrew package
# - git config --global user.name "timvisee"
# - git config --global user.email "$GIT_EMAIL"
# - git config --global credential.helper store
# - echo "https://timvisee:$HOMEBREW_GITHUB_API_TOKEN@github.com" >> ~/.git-credentials
# - brew bump-formula-pr --url="https://github.com/timvisee/ffsend/archive/$TRAVIS_TAG.tar.gz" --message="Automated release pull request using continuous integration." --no-browse -f -v ffsend