name: Build and Push Base Image on: push: paths: - "basedockerfile" - ".gitea/workflows/build-image.yaml" schedule: - cron: "0 0 1 * *" # 每月1号00:00执行 env: REGISTRY: git.mamahaha.work IMAGE_NAME: tpre jobs: build-and-push: runs-on: ubuntu-latest container: image: catthehacker/ubuntu:act-latest steps: - name: Checkout repository uses: https://git.mamahaha.work/actions/checkout@v4 with: submodules: "recursive" - name: Install build dependencies run: | apt-get update apt-get install -y build-essential cmake git # 编译 GMSSL - name: Build GMSSL run: | cd gmssl mkdir build cd build cmake .. make # 复制库文件 - name: Copy library files run: | pwd mkdir -p $GITHUB_WORKSPACE/lib ls $GITHUB_WORKSPACE cd gmssl/build/bin cp libgmssl.so \ libgmssl.so.3 \ libgmssl.so.3.1 \ libsdf_dummy.so \ libsdf_dummy.so.3 \ libsdf_dummy.so.3.1 \ libskf_dummy.so \ libskf_dummy.so.3 \ libskf_dummy.so.3.1 \ $GITHUB_WORKSPACE/lib/ - name: Set up Docker Buildx uses: https://git.mamahaha.work/actions/setup-buildx-action@v3 - name: Login to Private Registry uses: https://git.mamahaha.work/actions/login-action@v3 with: registry: ${{ env.REGISTRY }} username: ${{ secrets.USERNAME }} password: ${{ secrets.PASSWORD }} - name: Build and push uses: https://git.mamahaha.work/actions/build-push-action@v5 with: context: . file: basedockerfile push: true tags: | ${{ env.REGISTRY }}/sangge/${{ env.IMAGE_NAME }}:base