-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.travis.yml
47 lines (43 loc) · 1.57 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
42
43
44
45
46
47
dist: xenial
language: rust
addons:
apt:
packages:
- cmake
snaps:
- name: snapcraft
classic: true
env:
- ARCHITECTURE=amd64 BRANCH=master CHANNEL=edge
- ARCHITECTURE=amd64 BRANCH=beta CHANNEL=beta
- ARCHITECTURE=amd64 BRANCH=stable CHANNEL=candidate
- ARCHITECTURE=i386 BRANCH=master CHANNEL=edge
- ARCHITECTURE=i386 BRANCH=beta CHANNEL=beta
- ARCHITECTURE=i386 BRANCH=stable CHANNEL=candidate
- ARCHITECTURE=armhf BRANCH=master CHANNEL=edge
- ARCHITECTURE=armhf BRANCH=beta CHANNEL=beta
- ARCHITECTURE=armhf BRANCH=stable CHANNEL=candidate
- ARCHITECTURE=arm64 BRANCH=master CHANNEL=edge
- ARCHITECTURE=arm64 BRANCH=beta CHANNEL=beta
- ARCHITECTURE=arm64 BRANCH=stable CHANNEL=candidate
script:
# Decrypt the login credentials.
- openssl aes-256-cbc -K $encrypted_6f2c54a3a0c1_key -iv $encrypted_6f2c54a3a0c1_iv -in snapcraft-login.enc -out snapcraft-login -d
- snapcraft login --with snapcraft-login
- |
! ./scripts/is_released $ARCHITECTURE $BRANCH $CHANNEL || travis_terminate 0
- /snap/bin/snapcraft clean
- |
sed -i "0,/source-tag/s/source-tag:.*$/source-tag: '"$BRANCH"'/g" snapcraft.yaml
- travis_wait 50 /snap/bin/snapcraft --target-arch $ARCHITECTURE
# Test the installation. The host is amd64 so that's the only one
# installable.
- |
if [ "$ARCHITECTURE" = "amd64" ]; then
sudo snap install *.snap --dangerous
fi
# Publish to the snap store channel.
- |
if [ "$TRAVIS_BRANCH" = "master" ] && [ "$TRAVIS_EVENT_TYPE" != "pull_request" ]; then
snapcraft push *.snap --release $CHANNEL
fi