Github actions

Ethereal Lv4

build

Github默认自带docker。因此可以直接使用gradle执行dockerPushImage。
在build.gradle添加:

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
plugins {
id("com.bmuschko.docker-spring-boot-application") version "9.3.5"
}
docker {
springBootApplication {
baseImage = 'amazoncorretto:17-alpine-jdk'
ports = [8080]
images = ['registry.cn-shanghai.aliyuncs.com/miaoa/miaoa:1.0.0', 'registry.cn-shanghai.aliyuncs.com/miaoa/miaoa:latest']
jvmArgs = []
}
registryCredentials {
url = 'registry.cn-shanghai.aliyuncs.com/miaoa/miaoa'
username = 'username'
password = 'password'
}
}

然后添加job

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
build:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v3
- name: Make gradlew executable
run: chmod +x ./sichao_service-main/gradlew
- name: Set up JDK 17
uses: actions/setup-java@v3
with:
java-version: '17'
distribution: 'corretto'
- name: Setup Gradle
uses: gradle/gradle-build-action@v2
- name: Execute Gradle build
run: cd sichao_service-main && ./gradlew dockerPushImage

deploy

使用插件登录到远端ssh,执行命令。

job配置如下:

1
2
3
4
5
6
7
8
9
10
11
12
13
deploy:
runs-on: ubuntu-latest
needs: build
steps:
- name: Deploy to ECS
uses: appleboy/ssh-action@master
with:
host: ${{ secrets.HOST }}
username: root
password: ${{ secrets.PASSWORD }}
port: 22
script: |
bash /root/k8s/start.sh

secret

可以在github secert中添加变量,此处可以直接引用。

  • Title: Github actions
  • Author: Ethereal
  • Created at: 2023-10-27 19:37:25
  • Updated at: 2023-10-27 19:46:14
  • Link: https://ethereal-o.github.io/2023/10/27/Github-actions/
  • License: This work is licensed under CC BY-NC-SA 4.0.
 Comments
On this page
Github actions