An open API service indexing awesome lists of open source software.

https://github.com/wordpress-mobile/release-toolkit-gutenberg-mobile

Automation Scripts for Releasing Gutenberg-Mobile Updates to the WordPress Mobile Apps.
https://github.com/wordpress-mobile/release-toolkit-gutenberg-mobile

Last synced: 11 months ago
JSON representation

Automation Scripts for Releasing Gutenberg-Mobile Updates to the WordPress Mobile Apps.

Awesome Lists containing this project

README

          

# release-toolkit-gutenberg-mobile
Automation Scripts for Releasing Gutenberg-Mobile Updates to the WordPress Mobile Apps.

## GBM-CLI

The preferred automation flow now uses the `gbm-cli` tool. See the tool [README](./gbm-cli/README.md) for more information. Follow the [Installing](./gbm-cli/README.md#installing) section to get started.

### Prerequisites

- PHP, which can be installed with `brew install php`.
- A version of Ruby that matches [`.ruby-version`](https://github.com/WordPress/gutenberg/blob/trunk/packages/react-native-editor/ios/.ruby-version).
- A utility like [`rbenv`](https://github.com/rbenv/rbenv) can be used to manage Ruby versions.
- [GitHub authentication](./gbm-cli/README.md#authentication).

#### NVM

`nvm` is the recommended node manager for running the `gbm-cli` release commands.

When preparing Gutenberg for a release it is possible to set the global node version to the current version required by Gutenberg.

At the moment this is not possible when preparing a Gutenberg Mobile PR locally since there are multiple node versions during the preparation.

## Legacy Automation Script

### Prerequisites

To be able to run the legacy automation script make sure you have installed:

- [Github CLI](https://github.com/cli/cli)
```sh
brew install gh
```
- [jq](https://github.com/stedolan/jq)
```sh
brew install jq
```

### Usage

Run the script: `./release_automation.sh`

### Testing

You can test the scripts on forked repos. Please follow the instructions on top of the [release_automation.sh](./release_automation.sh) file.

### Troubleshooting

Occasionally, the script may encounter an error while running. Because the project makes use of a `node_modules` directory within the Gutenberg submodule, it may be useful in some cases to manually install npm dependencies there. By default, running `npm install` (or `npm i`) from within the `gutenberg-mobile` directory will trigger `npm ci` to run within the `gutenberg` directory, but sometimes it may also be helpful to try:

```
cd ./gutenberg
npm i
```

It can also be useful to run `cd ./gutenberg && npm run distclean`