@@ -2,23 +2,32 @@ name: Deploys
22
33on :
44 push :
5- tags :
6- - 4.*
5+ branches :
6+ - trunk
77
88jobs :
99 deploy :
10+ # Only continue if the commit message has '[deploy]' in it
11+ if : contains(toJson(github.event.commits), '[deploy]') == true
1012 name : Deploy Docker images
1113 runs-on : ubuntu-18.04
1214 steps :
1315 - uses : actions/checkout@v1
1416 - name : Output Docker info
1517 run : docker info
16- - name : Gets tag as env var if present
17- run : echo ::set-env name=TAG::${GITHUB_REF#refs/*/}
18- - name : Output tag if present
19- run : echo ${TAG}
20- - name : Build
21- run : VERSION="${TAG}" make build
18+ - name : Sets build date
19+ run : echo ::set-env name=BUILD_DATE::$(date '+%Y%m%d')
20+ - name : Build base image to get Grid version
21+ run : VERSION="local" BUILD_DATE=${BUILD_DATE} make base
22+ - name : Get Grid version
23+ # sed used to remove last comma of Selenium version output
24+ run : echo ::set-env name=GRID_VERSION::$(docker run --rm selenium/base:local-${BUILD_DATE} java -jar /opt/selenium/selenium-server.jar hub --version | awk '{print $3}' | sed 's/\(.*\),/\1 /')
25+ - name : Display Grid version
26+ run : echo ${GRID_VERSION}
27+ - name : Remove local Docker tag
28+ run : docker rmi selenium/base:local-${BUILD_DATE}
29+ - name : Build images
30+ run : VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} make build
2231 - name : Login Docker Hub
2332 run : docker login -u="$DOCKER_USERNAME" -p="$DOCKER_PASSWORD"
2433 env :
2736 - name : Deploy new images
2837 run : VERSION="${TAG}" make release
2938 - name : Tag browser images
30- run : VERSION="${TAG}" PUSH_IMAGE=true make tag_and_push_browser_images
31- - name : List Docker images
32- run : docker images --filter=reference='selenium/*:*' --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}\t{{.Size}}"
39+ run : VERSION="${GRID_VERSION}" BUILD_DATE=${BUILD_DATE} PUSH_IMAGE=true make tag_and_push_browser_images
40+ - name : Get latest tag
41+ run : echo ::set-env name=LATEST_TAG::$(git tag | tail -1)
42+ - name : Display latest tag
43+ run : echo ${LATEST_TAG}
44+ - name : Create release notes (release_notes.md)
45+ run : ./generate_release_notes.sh ${LATEST_TAG} origin/automated-release ${GRID_VERSION} ${BUILD_DATE}
46+ - name : Create Release
47+ id : create_release
48+ uses : actions/create-release@v1
49+ env :
50+ GITHUB_TOKEN : ${{ secrets.GITHUB_TOKEN }}
51+ with :
52+ tag_name : ${{ env.GRID_VERSION }}-${{ env.BUILD_DATE }}
53+ release_name : ${{ env.GRID_VERSION }}-${{ env.BUILD_DATE }}
54+ body_path : release_notes.md
55+ draft : false
56+ prerelease : false
3357# Enable this part when Selenium 4 is released
3458# - name: Deploy tag latest
3559# run: VERSION="${TRAVIS_TAG}" make tag_latest
0 commit comments