通过 Github 工作流的 Android 的 CI/CD 管道

持续集成/持续交付自动化构建操作以弥合开发和运营之间的差距


有时需要向客户或其他团队成员(例如 QA 团队)提供 Android APK。创建 APK,然后您上传一些云服务以下载其他云服务。

您仅提供 APK 的计划似乎是一项漫长的任务。如果它自动发生不是很好吗?

以下是创建管道的方法,当您的代码推送到您的分支时,GitHub 会在该管道中构建 APK。

第一步:创建文件夹和 YAML 文件

• 在项目的根文件夹中——创建一个.github 文件夹

• 以及在工作流中创建另一个文件夹

• 在工作流文件夹中——创建一个 app-job-on-push.yaml 文件

第二步:编写一个动作来执行创建项目构建的操作。

name: android-paging-coroutine

on:   push:
    branches:
      - master jobs:   build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
      - name: Set up JDK 11
        uses: actions/setup-java@v1
        with:
          java-version: 11

      - name: Build with Gradle
        run: ./gradlew build

      - name: Build APK
        run: ./gradlew :app:assembleDebug

      - uses: actions/upload-artifact@v2
        with:
         name: Package
         path: app/build/outputs/apk/debug/

第三步:执行权限——在将代码推送到你的分支之前

您需要更新 gradlew 文件的执行权限。

  1. 您也可以使用 Git Bash 或终端、CMD 来执行此操作。

本地:chmod +x gradlew

Git:
  git update-index --chmod=+x gradlew
  git add .
  git commit -m "Changing permission of gradlew"
  git push
You should see:
  mode change 100644 => 100755 gradlew
  1. 当您将代码推送到分支时,您将看到工作流运行操作,如下所示


在“操作”选项卡中,您将看到工作流名称如下

工作流将自动构建项目并生成包含 APK 文件的输出工件包。


工作完成后,您将能够下载您的软件包。


需要 APK 的用户现在可以仅访问该工作流包链接。

但是——每次你将代码推送到分支时,这都会创建一个构建。

或者——我们也可以手动操作。这将允许我们随时构建 APK。

  1. 为此,您必须在 YAML 文件中创建一个手动作业,如下所示,当您手动运行它时,它将分派您的工作流。
name: android-paging-coroutine

on: 
  workflow_dispatch:
    inputs:
      branch:
        description: 'Branch'     
        required: true
        default: 'master'

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v2
        with:
           token: ${{ secrets.GITHUB_TOKEN }}
           ref: "${{ github.event.inputs.branch }}"
           submodules: 'true'
      - name: Set up JDK 1.8
        uses: actions/setup-java@v1
        with:
          java-version: 1.8

      - name: Build with Gradle
        run: ./gradlew build

      - name: Build APK
        run: ./gradlew :app:assembleDebug

      - uses: actions/upload-artifact@v2
        with:
         name: Package
         path: app/build/outputs/apk/debug/
         #path: app/build/outputs/
         #path: [MODULE]/build/outputs/
         retention-days: 2

保留天数将在您设置的天数内删除您的构建

→ 推送到分支后,找到操作选项卡。除非您手动启动,否则将有另一个工作流程不会运行。


您现在可以通过单击运行工作流按钮来运行工作流


之后,它将开始构建过程以创建工件。

希望你觉得有用🤝

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值