返回

自动化发布微信小程序到 GitHub Marketplace

前端

快速发布微信小程序到 GitHub Marketplace 的 GitHub Action

简介

对于开发者来说,将自己的微信小程序发布到 GitHub Marketplace 是一个绝佳的机会,可以让他们的作品获得更广泛的受众。借助 GitHub Action,这个过程变得更加容易和自动化。本博客将详细介绍如何使用 GitHub Action 来快速高效地将您的微信小程序发布到 GitHub Marketplace。

前提条件

在开始使用 GitHub Action 之前,您需要确保满足以下前提条件:

  • GitHub 账户
  • 微信小程序项目
  • GitHub Marketplace 发布者账户
  • 已安装并配置 GitHub CLI

创建 GitHub Action

要创建 GitHub Action,请按照以下步骤操作:

  1. 在 GitHub 中创建新存储库。
  2. 创建一个名为 .github/workflows 的目录。
  3. .github/workflows 目录中,创建一个名为 main.yml 的文件。
  4. 将以下内容添加到 main.yml 文件中:
name: Release WeChat Mini Program

on:
  push:
    branches: [ main ]

jobs:
  build:
    runs-on: ubuntu-latest

    steps:
      - uses: actions/checkout@v3

      - name: Install dependencies
        run: npm install

      - name: Build WeChat Mini Program
        run: npm run build

      - name: Create release
        run: |
          git tag v$(npm run version)
          git push origin v$(npm run version)

      - name: Publish to GitHub Marketplace
        uses: actions/github-script@v6
        with:
          script: |
            const Marketplace = require('@octokit/app-marketplace');
            const { Octokit } = require("@octokit/rest");
            const fs = require("fs");
            const gh = new Octokit({auth: process.env.GITHUB_TOKEN});
            const marketplace = new Marketplace({auth: process.env.GITHUB_TOKEN});
            const listingId = process.env.MARKETPLACE_LISTING_ID;
            const assetPath = ".github/workflows/output.zip";
            async function uploadAsset() {
              const data = fs.readFileSync(assetPath);
              const release = await gh.repos.getReleaseByTag({
                owner: "octo-apps",
                repo: "my-app",
                tag: `v${process.env.VERSION}`
              });
              const asset = await marketplace.uploadReleaseAsset({
                listingId,
                releaseId: release.data.id,
                data
              });
              console.log(`Uploaded asset ${asset.data.id}`);
              const result = await marketplace.updateListing({
                listingId,
                data: {
                  latest_release: release.data.id
                }
              });
              console.log(`Updated listing ${result.data.id}`);
            }
            uploadAsset();

配置 GitHub Action

为了配置 GitHub Action,请按照以下步骤操作:

  1. 在 GitHub Marketplace 中转到您的发布者账户。
  2. 单击“创建新列表”按钮。
  3. 选择您的微信小程序项目。
  4. 填写上市详细信息,包括名称、、类别、许可证、隐私政策和支持电子邮件。
  5. 单击“创建列表”按钮。

使用 GitHub Action 发布微信小程序

要使用 GitHub Action 发布您的微信小程序,只需将您的代码更改推送到 GitHub 存储库。 GitHub Action 将自动运行并发布您的微信小程序到 GitHub Marketplace。

结论

通过使用 GitHub Action,您可以轻松快速地将您的微信小程序发布到 GitHub Marketplace。这可以让您的作品获得更广泛的受众,并帮助其他开发者发现和使用您的应用程序。

常见问题解答

  1. 为什么使用 GitHub Action 来发布微信小程序?
    GitHub Action 提供了一种自动化且高效的方式来发布您的微信小程序,无需手动执行繁琐的步骤。

  2. 发布微信小程序到 GitHub Marketplace 的费用是多少?
    在 GitHub Marketplace 上发布微信小程序是免费的。

  3. 我的微信小程序必须满足哪些要求?
    您的微信小程序必须遵守 GitHub Marketplace 的指南,包括技术要求和内容指南。

  4. 如何更新已发布的微信小程序?
    要更新已发布的微信小程序,只需将您的代码更改推送到 GitHub 存储库,GitHub Action 将自动更新您的微信小程序。

  5. 如何从 GitHub Marketplace 删除我的微信小程序?
    要从 GitHub Marketplace 中删除您的微信小程序,请转到您的发布者账户并单击“删除列表”按钮。