forked from sugarlabs/musicblocks
-
Notifications
You must be signed in to change notification settings - Fork 2
/
Copy path.travis.yml
65 lines (64 loc) · 3.37 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
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
sudo: required
addons:
apt:
update: true
packages:
- docker-ce
services:
- docker
script:
- export DOCKER_CLI_EXPERIMENTAL=enabled
- source utils.sh
- music_arm_sha=$(get_manifest_sha "treehouses/musicblocks:latest" "arm")
- echo $music_arm_sha
- nginx_arm_sha=$(get_manifest_sha "treehouses/nginx:latest" "arm")
- echo $nginx_arm_sha
- flag_arm=$(is_base "treehouses/nginx@"$nginx_arm_sha "treehouses/musicblocks@"$music_arm_sha)
- echo $flag_arm
- music_amd64_sha=$(get_manifest_sha "treehouses/musicblocks:latest" "amd64")
- echo $music_amd64_sha
- nginx_amd64_sha=$(get_manifest_sha "treehouses/nginx:latest" "amd64")
- echo $nginx_amd64_sha
- flag_amd64=$(is_base "treehouses/nginx@"$nginx_amd64_sha "treehouses/musicblocks@"$music_amd64_sha)
- echo $flag_amd64
- music_arm64_sha=$(get_manifest_sha "treehouses/musicblocks:latest" "arm64")
- echo $music_arm64_sha
- nginx_arm64_sha=$(get_manifest_sha "treehouses/nginx:latest" "arm64")
- echo $nginx_arm64_sha
- flag_arm64=$(is_base "treehouses/nginx@"$nginx_arm64_sha "treehouses/musicblocks@"$music_arm64_sha)
- echo $flag_arm64
- flag=$(compare "treehouses/nginx@"$nginx_arm_sha "treehouses/musicblocks@"$music_arm_sha "treehouses/nginx@"$nginx_amd64_sha "treehouses/musicblocks@"$music_amd64_sha "treehouses/nginx@"$nginx_arm64_sha "treehouses/musicblocks@"$music_arm64_sha)
- echo $flag
before_deploy:
- echo "$DOCKERPASS" | docker login -u sevenseas --password-stdin
- docker run --rm --privileged multiarch/qemu-user-static --reset -p yes
- "./docker-build.sh treehouses/nginx:latest arm"
- "./docker-build.sh treehouses/nginx:latest arm64"
- "./docker-build.sh treehouses/nginx:latest amd64"
- build_image "treehouses/nginx:latest" arm "treehouses/musicblocks" #base image is arm arch
- build_image "treehouses/nginx:latest" amd64 "treehouses/musicblocks" #base image is amd64 arch
- build_image "treehouses/nginx:latest" arm64 "treehouses/musicblocks" #base image is arm64 arch
#before_deploy: #in case we want to check the code ...
- deploy_image "treehouses/musicblocks" arm
- deploy_image "treehouses/musicblocks" amd64
- deploy_image "treehouses/musicblocks" arm64
- timetag=$(date +%Y%m%d%H%M)
- echo $timetag
- tag1="latest"
- tag2=$timetag
- echo "timetag is $tag2"
- create_manifest treehouses/musicblocks $tag1 $tag2 treehouses/musicblocks-tags:amd64
treehouses/musicblocks-tags:arm treehouses/musicblocks-tags:arm64
- docker manifest inspect treehouses/musicblocks:$tag1
- docker manifest inspect treehouses/musicblocks:$tag2
deploy:
- provider: script
script: docker manifest push treehouses/musicblocks:$tag1; docker manifest push
treehouses/musicblocks:$tag2
skip_cleanup: true
on:
all_branches: true
condition: "$flag = true"
env:
global:
- secure: HK6r+EgNmqEL/7AJKbSrFpHpE4R9cHKk9aM4Zc5yBz6gW6BBYIsT7UpZTl9Jd1fwMgFCjMIvOPNFwXCSwbKb4aXZOzGAavy+xsOZJXGlyUh9Tis+zUdbhGi83VmHphDmPgATKxYA7UAuEY/NguxQd04DG0ZhDVPX5rMWmb/uG2ZDcWeVwoLUr3EDkcUTFpCNLy+XBkEgDauPX4hZK0KJDcZrPV7ufUQkH+Spm8fYmNW92GfrLBV/rnF3UTrb9DtJw9jGgY49J2fSzRgX00ve1XfXBFGRrOxMNRVPpNTvi7T+38WiZVXulajwsCjLcI0aO6zzWrJ1Lp0F+ObLgqF4UsdnGrgesCxN7N1LUsbMZbgJn54anq51SHAVl54NGZM1g8NihzNu8CLP9OO/rb97kqumlRnKblZXNCPkohYbChvcziSN4gMKKbiJ0xYyL3poktNM4hcGRofWLLYuCpJrJFkyeeC9tTZCoCFV1lhfWq2fnBlYohiChFc7T6kXrqcTNZw7a6oQDrK9IVKj40cq9Gs/upFGftWtf+sWs3I/jQdmLZty3LaHMC2K42S6iYJ+8cYTCE39no3VhQQmNImmTqONa4OXbpylNSVpj5MDMARGGEvGwbkmJ+dP5kr8aNWngYrF6k+FdhlyBTNGvbbVvKb6wVsc0JjXlFqOa2+W5sM=