1
+ name : Meshery-istio Build and Releaser
2
+ on :
3
+ push :
4
+ branches :
5
+ - ' master'
6
+ tags :
7
+ - ' v*'
8
+
9
+ jobs :
10
+ build :
11
+ name : Build check
12
+ runs-on : ubuntu-latest
13
+ # needs: [lint, error_check, static_check, vet, sec_check, tests]
14
+ steps :
15
+ - name : Check out code
16
+ uses : actions/checkout@master
17
+ with :
18
+ fetch-depth : 1
19
+ - name : Setup Go
20
+ uses : actions/setup-go@v1
21
+ with :
22
+ go-version : ${{ secrets.GO_VERSION }}
23
+ - run : GOPROXY=direct GOSUMDB=off GO111MODULE=on go build .
24
+ docker :
25
+ name : Docker build and push
26
+ runs-on : ubuntu-latest
27
+ steps :
28
+ - name : Check out code
29
+ uses : actions/checkout@master
30
+ with :
31
+ fetch-depth : 1
32
+ - name : Docker login
33
+ uses : azure/docker-login@v1
34
+ with :
35
+ username : ${{ secrets.DOCKER_USERNAME }}
36
+ password : ${{ secrets.DOCKER_PASSWORD }}
37
+ - name : Docker edge build & tag
38
+ if : startsWith(github.ref, 'refs/tags/') != true && success()
39
+ run : |
40
+ DOCKER_BUILDKIT=1 docker build --no-cache -t ${{ secrets.IMAGE_NAME }}:edge-latest --build-arg TOKEN=${{ secrets.GLOBAL_TOKEN }} .
41
+ docker tag ${{ secrets.IMAGE_NAME }}:edge-latest ${{ secrets.IMAGE_NAME }}:edge-${GITHUB_SHA::7}
42
+ - name : Docker edge push
43
+ if : startsWith(github.ref, 'refs/tags/') != true && success()
44
+ run : |
45
+ docker push ${{ secrets.IMAGE_NAME }}:edge-latest
46
+ docker push ${{ secrets.IMAGE_NAME }}:edge-${GITHUB_SHA::7}
47
+ - name : Docker stable build & tag
48
+ if : github.event_name != 'pull_request' && startsWith(github.ref, 'refs/tags/') && success()
49
+ run : |
50
+ DOCKER_BUILDKIT=1 docker build --no-cache -t ${{ secrets.IMAGE_NAME }}:stable-latest .
51
+ docker tag ${{ secrets.IMAGE_NAME }}:stable-latest ${{ secrets.IMAGE_NAME }}:stable-${GITHUB_REF/refs\/tags\//}
52
+ docker tag ${{ secrets.IMAGE_NAME }}:stable-latest ${{ secrets.IMAGE_NAME }}:stable-${GITHUB_SHA::7}
53
+ - name : Docker stable push
54
+ if : github.event_name != 'pull_request' && startsWith(github.ref, 'refs/tags/') && success()
55
+ run : |
56
+ docker push ${{ secrets.IMAGE_NAME }}:stable-latest
57
+ docker push ${{ secrets.IMAGE_NAME }}:stable-${GITHUB_REF/refs\/tags\//}
58
+ docker push ${{ secrets.IMAGE_NAME }}:stable-${GITHUB_SHA::7}
59
+ - name : Docker Hub Description
60
+ if : github.event_name != 'pull_request' && startsWith(github.ref, 'refs/tags/') && success()
61
+ uses :
peter-evans/[email protected]
62
+ env :
63
+ DOCKERHUB_USERNAME : ${{ secrets.DOCKER_USERNAME }}
64
+ DOCKERHUB_PASSWORD : ${{ secrets.DOCKER_PASSWORD }}
65
+ DOCKERHUB_REPOSITORY : ${{ secrets.IMAGE_NAME }}
0 commit comments