@revopush/code-push-cli 0.0.2 → 0.0.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/README.md +135 -341
- package/guied.md +351 -0
- package/package.json +1 -1
package/README.md
CHANGED
|
@@ -1,36 +1,60 @@
|
|
|
1
|
-
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
1
|
+
**Guide Overview:**
|
|
2
|
+
1. [Introduction](#1-introduction)
|
|
3
|
+
2. [Prerequisites](#2-prerequisites)
|
|
4
|
+
- 2.1 [Installing Required Tools](#21-installing-required-tools)
|
|
5
|
+
- 2.2 [Setting Up Revopush CLI](#22-setting-up-revopush-cli)
|
|
6
|
+
3. [Migrating from Appcenter to Revopush](#3-migrating-from-appcenter-to-revopush)
|
|
7
|
+
- 3.1 [Logging In](#31-logging-in)
|
|
8
|
+
- 3.2 [Migrating Applications and Deployments](#32-migrating-applications-and-deployments)
|
|
9
|
+
4. [Setting Up Revopush from Scratch](#4-setting-up-revopush-from-scratch)
|
|
10
|
+
- 4.1 [Logging In](#41-logging-in)
|
|
11
|
+
- 4.2 [Creating Applications](#42-creating-applications)
|
|
12
|
+
- 4.3 [Creating Deployments](#43-creating-deployments)
|
|
13
|
+
5. [Updating Your React Native App](#5-updating-your-react-native-app)
|
|
14
|
+
- 5.1 [iOS Configuration](#51-ios-configuration)
|
|
15
|
+
- 5.2 [Android Configuration](#52-android-configuration)
|
|
16
|
+
6. [Releasing Updates](#6-releasing-updates)
|
|
17
|
+
- 6.1 [For iOS](#61-for-ios)
|
|
18
|
+
- 6.2 [For Android](#62-for-android)
|
|
19
|
+
- 6.3 [Additional Options](#63-additional-options)
|
|
20
|
+
7. [Summary and Resources](#7-summary-and-resources)
|
|
5
21
|
|
|
6
|
-
|
|
7
|
-
whether you’re an experienced developer familiar with Appcenter or a beginner exploring Revopush applying OTA for your app from scratch.
|
|
22
|
+
## 1. Introduction
|
|
8
23
|
|
|
9
|
-
|
|
24
|
+
Welcome! This guide will help you migrate your Over-the-Air (OTA) updates from Appcenter to Revopush.
|
|
25
|
+
With Revopush's Command Line Interface (CLI), you can easily push updates directly to your users' devices
|
|
26
|
+
without needing to go through app stores.
|
|
10
27
|
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
-
|
|
14
|
-
|
|
15
|
-
-
|
|
16
|
-
- Migrate your React Native application to Revopush OTA. There we describe required changes in your React Native application to start using Revopush OTA.
|
|
17
|
-
- Summary. This section will summarize the key points of the guide and provide you with additional resources to help you get the most out of Revopush.
|
|
28
|
+
**What You'll Learn:**
|
|
29
|
+
- How to install the Revopush CLI
|
|
30
|
+
- Migrating your existing OTA updates from Appcenter
|
|
31
|
+
- Setting up and managing your applications and deployments in Revopush
|
|
32
|
+
- Updating your React Native app to use Revopush for OTA updates
|
|
18
33
|
|
|
19
34
|
Let’s get started!
|
|
20
35
|
|
|
21
36
|
## 2. Prerequisites
|
|
22
37
|
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
38
|
+
Before you begin, ensure you have the following (depends on your platform and preferences):
|
|
39
|
+
|
|
40
|
+
- **Developer Tools Installed:**
|
|
41
|
+
- [Node.js](https://nodejs.org/)
|
|
42
|
+
- npm or Yarn
|
|
43
|
+
- npx
|
|
44
|
+
- [Android Studio](https://developer.android.com/studio)
|
|
45
|
+
- [Xcode](https://developer.apple.com/xcode/)
|
|
46
|
+
- [Visual Studio Code](https://code.visualstudio.com/)
|
|
26
47
|
|
|
27
|
-
|
|
28
|
-
|
|
48
|
+
- **Permissions:**
|
|
49
|
+
- Ability to install npm packages globally.
|
|
29
50
|
|
|
30
|
-
|
|
31
|
-
|
|
51
|
+
- **Revopush Account:**
|
|
52
|
+
- Sign up at [Revopush](https://revopush.org/) using GitHub or Google for authentication.
|
|
32
53
|
|
|
33
|
-
|
|
54
|
+
- **(If Migrating) Appcenter Access:**
|
|
55
|
+
- Ensure you have access to your existing Appcenter account and its CLI.
|
|
56
|
+
|
|
57
|
+
### 2.1 Installing Required Tools
|
|
34
58
|
You manage most of CodePush's functionality using the App Center CLI.
|
|
35
59
|
If you had one installed, you can update it to the latest version by running the following command:
|
|
36
60
|
|
|
@@ -78,23 +102,24 @@ Commands:
|
|
|
78
102
|
setup-autocomplete Setup tab completion for your shell
|
|
79
103
|
```
|
|
80
104
|
|
|
81
|
-
### 2.2
|
|
105
|
+
### 2.2 Setting Up Revopush CLI
|
|
82
106
|
Similarly to Appcenter Revopush manages the most of CodePush's functionality using CLI.
|
|
83
107
|
|
|
84
108
|
To install it run the following command:
|
|
85
109
|
|
|
110
|
+
**Install Revopush CLI:**
|
|
86
111
|
```shell
|
|
87
112
|
npm install -g @revopush/code-push-cli
|
|
88
113
|
```
|
|
89
114
|
|
|
90
|
-
|
|
91
|
-
|
|
115
|
+
**Update Revopush CLI to the Latest Version:**
|
|
92
116
|
```shell
|
|
93
117
|
npm update -g @revopush/code-push-cli
|
|
94
118
|
```
|
|
95
119
|
|
|
96
120
|
Upon installation or update, you can check the version of the Revopush CLI and the list of available commands by running the following command:
|
|
97
121
|
|
|
122
|
+
**Verify Installation:**
|
|
98
123
|
```shell
|
|
99
124
|
revopush -h
|
|
100
125
|
```
|
|
@@ -136,14 +161,14 @@ Options:
|
|
|
136
161
|
|
|
137
162
|
```
|
|
138
163
|
|
|
139
|
-
## 3. Appcenter to Revopush
|
|
164
|
+
## 3. Migrating from Appcenter to Revopush
|
|
140
165
|
|
|
141
166
|
You need to execute steps in this section if you have been using Appcenter for OTA updates and wish to migrate to Revopush.
|
|
142
167
|
|
|
143
168
|
If you did not use Appcenter OTA updates before and just wish to apply
|
|
144
|
-
OTA on top of Revopush for your app feel free to skip this section and go to section 4.
|
|
169
|
+
OTA on top of Revopush for your app feel free to skip this section and go to section [4](#4-setting-up-revopush-from-scratch).
|
|
145
170
|
|
|
146
|
-
### 3.1
|
|
171
|
+
### 3.1 Logging In
|
|
147
172
|
|
|
148
173
|
Execute the following command to login to Appcenter CLI using provider of your choice (GitHub, Facebook, Microsoft, Google):
|
|
149
174
|
|
|
@@ -157,14 +182,14 @@ Similarly, in a separate window login to Revopush CLI using the following comman
|
|
|
157
182
|
revopush login
|
|
158
183
|
```
|
|
159
184
|
|
|
160
|
-
### 3.2
|
|
161
|
-
|
|
185
|
+
### 3.2 Migrating Applications and Deployments
|
|
186
|
+
**1. List Your Appcenter Apps:**
|
|
162
187
|
|
|
163
188
|
```shell
|
|
164
189
|
appcenter apps list
|
|
165
190
|
```
|
|
166
191
|
|
|
167
|
-
|
|
192
|
+
Example Output:
|
|
168
193
|
|
|
169
194
|
```shell
|
|
170
195
|
johndoe/rn2_android
|
|
@@ -176,7 +201,7 @@ is the React Native application for iOS.
|
|
|
176
201
|
|
|
177
202
|
You can check target OS of the app using command `appcenter apps show -a <app name here>`.
|
|
178
203
|
|
|
179
|
-
Android
|
|
204
|
+
**Android:**
|
|
180
205
|
|
|
181
206
|
```shell
|
|
182
207
|
appcenter apps show -a johndoe/rn2_android
|
|
@@ -194,7 +219,7 @@ Owner Name: johndoe
|
|
|
194
219
|
Azure Subscription ID:
|
|
195
220
|
```
|
|
196
221
|
|
|
197
|
-
iOS
|
|
222
|
+
**iOS:**
|
|
198
223
|
|
|
199
224
|
```shell
|
|
200
225
|
appcenter apps show -a johndoe/rn2_ios
|
|
@@ -212,21 +237,18 @@ Owner Name: johndoe
|
|
|
212
237
|
Azure Subscription ID:
|
|
213
238
|
```
|
|
214
239
|
|
|
215
|
-
### 3.2 Create applications in Revopush
|
|
216
240
|
|
|
217
|
-
|
|
218
|
-
Please keep in mind, compare to Appcenter, Revopush does not accept username (`<username>/<app name>`) as an application name,
|
|
219
|
-
you just need to take part after `<username>` in the Appcenter app name. For example:
|
|
241
|
+
**2. Create Corresponding Revopush Apps:**
|
|
220
242
|
|
|
221
|
-
|
|
222
|
-
`johndoe/rn2_android` becomes `rn2_android`.
|
|
243
|
+
Remove the username prefix when creating apps in Revopush.
|
|
223
244
|
|
|
224
|
-
Having these names execute the following command to create applications:
|
|
225
245
|
```shell
|
|
226
246
|
revopush app add rn2_ios
|
|
247
|
+
revopush app add rn2_android
|
|
227
248
|
```
|
|
228
249
|
|
|
229
|
-
|
|
250
|
+
Example Output:
|
|
251
|
+
|
|
230
252
|
```shell
|
|
231
253
|
Successfully added the "rn2_ios" app, along with the following default deployments:
|
|
232
254
|
┌────────────┬────────────────────────────────────────┐
|
|
@@ -238,12 +260,6 @@ Successfully added the "rn2_ios" app, along with the following default deploymen
|
|
|
238
260
|
└────────────┴────────────────────────────────────────┘
|
|
239
261
|
```
|
|
240
262
|
|
|
241
|
-
and another one for Android:
|
|
242
|
-
```shell
|
|
243
|
-
revopush app add rn2_android
|
|
244
|
-
```
|
|
245
|
-
|
|
246
|
-
with response like
|
|
247
263
|
```shell
|
|
248
264
|
Successfully added the "rn2_android" app, along with the following default deployments:
|
|
249
265
|
┌────────────┬────────────────────────────────────────┐
|
|
@@ -255,232 +271,88 @@ Successfully added the "rn2_android" app, along with the following default deplo
|
|
|
255
271
|
└────────────┴────────────────────────────────────────┘
|
|
256
272
|
```
|
|
257
273
|
|
|
258
|
-
Out of the box, Revopush will also create two deployments (Staging and Production) for the application you have created.
|
|
259
|
-
It empowers you to use the best practices of [Multi-Deployment Testing](https://learn.microsoft.com/en-us/appcenter/distribution/codepush/rn-deployment).
|
|
260
|
-
You can add more deployments later or delete if you need to. However, you do not have to remember or save these deployments keys,
|
|
261
|
-
because you can always take them using Revopush CLI.
|
|
262
|
-
|
|
263
|
-
### 3.2 Replicate Appcenter Deployments in Revopush
|
|
264
|
-
|
|
265
|
-
Revopush allows you to create multiple deployments for each application with the same deployment keys as you have in Appcenter.
|
|
266
|
-
The reason for that is that these keys are treated as a sort of secrets (for instance these can be used in your CI/CD pipeline,
|
|
267
|
-
environment variables on developer machine or build server, mobile app, etc).
|
|
268
|
-
To reduce frictions in migration process and make the process as smooth as possible
|
|
269
|
-
we recommend you to reuse these keys in Revopush deployments.
|
|
270
|
-
|
|
271
|
-
In examples below we assume you have 2 deployments in Appcenter for every app: `Staging` and `Production`.
|
|
272
|
-
Actual number of deployments can be different in your case but idea is the same - re-create these with identical keys in Revopush.
|
|
273
274
|
|
|
274
|
-
|
|
275
|
+
**3. Replicate Deployments:**
|
|
275
276
|
|
|
276
|
-
|
|
277
|
+
List Appcenter deployments:
|
|
277
278
|
|
|
278
279
|
```shell
|
|
279
|
-
|
|
280
|
+
appcenter codepush deployment list -k -a johndoe/rn2_ios
|
|
280
281
|
```
|
|
281
282
|
|
|
282
|
-
|
|
283
|
-
```shell
|
|
284
|
-
┌────────────┬────────────────────────────────────────┐
|
|
285
|
-
│ Name │ Key │
|
|
286
|
-
├────────────┼────────────────────────────────────────┤
|
|
287
|
-
│ Production │ xJeOl4A5No7c9-wJv8HLj1ktmmKeP5awD0us5u │
|
|
288
|
-
├────────────┼────────────────────────────────────────┤
|
|
289
|
-
│ Staging │ ZFZiSAKLUL_QmBXeWAcSkpv87fkaDeWu1W0TOs │
|
|
290
|
-
└────────────┴────────────────────────────────────────┘
|
|
291
|
-
```
|
|
292
|
-
|
|
293
|
-
Add Revopush deployment for iOS with the same keys running command to replicate Staging
|
|
294
|
-
```shell
|
|
295
|
-
revopush deployment add rn2_ios appcenter_Staging -k ZFZiSAKLUL_QmBXeWAcSkpv87fkaDeWu1W0TOs
|
|
296
|
-
```
|
|
283
|
+
Add the same deployments in Revopush with identical keys
|
|
297
284
|
|
|
298
|
-
and the following command to replicate Production
|
|
299
285
|
```shell
|
|
300
|
-
revopush deployment add rn2_ios
|
|
286
|
+
revopush deployment add rn2_ios appcenter_Staging -k <Staging_Key>
|
|
287
|
+
revopush deployment add rn2_ios appcenter_Production -k <Production_Key>
|
|
301
288
|
```
|
|
302
289
|
|
|
303
|
-
|
|
304
|
-
- `rn2_ios` is the application name in Revopush
|
|
305
|
-
- `appcenter_Staging` and `appcenter_Production` are the deployment names in Revopush (the same as in Appcenter but for sake of clarity we added `appcenter_` prefix)
|
|
306
|
-
- `ZFZiSAKLUL_QmBXeWAcSkpv87fkaDeWu1W0TOs` is the deployment key for `Staging` in Appcenter
|
|
307
|
-
- `xJeOl4A5No7c9-wJv8HLj1ktmmKeP5awD0us5u` is the deployment key for `Production` in Appcenter
|
|
308
|
-
|
|
309
|
-
Help tip:
|
|
310
|
-
Until you switched your mobile application to use Revopush (more about this below) or during testing it's totally fine to delete the deployment in Revopush.
|
|
311
|
-
|
|
312
|
-
To delete deployment if you need run the following command:
|
|
313
|
-
|
|
314
|
-
```shell
|
|
315
|
-
revopush deployment rm rn2_ios appcenter_Staging
|
|
316
|
-
````
|
|
317
|
-
|
|
318
|
-
#### Android
|
|
319
|
-
|
|
320
|
-
For Android app steps are very similar except different app name. List deployments in Appcenter:
|
|
290
|
+
Repeat for Android
|
|
321
291
|
|
|
322
292
|
```shell
|
|
323
293
|
appcenter codepush deployment list -k -a johndoe/rn2_android
|
|
294
|
+
revopush deployment add rn2_android appcenter_Staging -k <Staging_Key>
|
|
295
|
+
revopush deployment add rn2_android appcenter_Production -k <Production_Key>
|
|
324
296
|
```
|
|
325
297
|
|
|
326
|
-
with output like this:
|
|
327
|
-
```shell
|
|
328
|
-
┌────────────┬────────────────────────────────────────┐
|
|
329
|
-
│ Name │ Key │
|
|
330
|
-
├────────────┼────────────────────────────────────────┤
|
|
331
|
-
│ Production │ PQPwJaW63MTPI8T__u168qJm7Vq7Mn0UJ94MMR │
|
|
332
|
-
├────────────┼────────────────────────────────────────┤
|
|
333
|
-
│ Staging │ 4tK3WlLhumcwaukx68Irq04XqS_3R4H6N-lV-z │
|
|
334
|
-
└────────────┴────────────────────────────────────────┘
|
|
335
|
-
```
|
|
336
|
-
|
|
337
|
-
Add Revopush Android Staging deployment
|
|
338
|
-
```shell
|
|
339
|
-
revopush deployment add rn2_android appcenter_Staging -k 4tK3WlLhumcwaukx68Irq04XqS_3R4H6N-lV-z
|
|
340
|
-
```
|
|
341
|
-
|
|
342
|
-
Add Revopush Android Production deployment
|
|
343
|
-
|
|
344
|
-
```shell
|
|
345
|
-
revopush deployment add rn2_android appcenter_Production -k PQPwJaW63MTPI8T__u168qJm7Vq7Mn0UJ94MMR
|
|
346
|
-
```
|
|
347
|
-
|
|
348
|
-
where:
|
|
349
|
-
- `rn2_android` is the application name in Revopush
|
|
350
|
-
- `appcenter_Staging` and `appcenter_Production` are the deployment names in Revopush (the same as in Appcenter but for sake of clarity we added `appcenter_` prefix)
|
|
351
|
-
- `4tK3WlLhumcwaukx68Irq04XqS_3R4H6N-lV-z` is the deployment key for `Staging` in Appcenter
|
|
352
|
-
- `PQPwJaW63MTPI8T__u168qJm7Vq7Mn0UJ94MMR` is the deployment key for `Production` in Appcenter
|
|
353
|
-
|
|
354
298
|
Repeat for all other deployment you have in Appcenter and wish to continue to use in Revopush.
|
|
355
299
|
|
|
356
|
-
## 4.
|
|
357
|
-
|
|
358
|
-
You need to execute steps in this section if you start from scratch and wish to apply OTA on top of Revopush for your app.
|
|
359
|
-
People who migrate from Appcenter to Revopush can skip this section (we have done all what we need in previous sections)
|
|
360
|
-
and go to section 5.
|
|
361
|
-
|
|
362
|
-
It empowers you to use the best practices of [Multi-Deployment Testing](https://learn.microsoft.com/en-us/appcenter/distribution/codepush/rn-deployment)
|
|
363
|
-
and have isolated app for iOS and Android each with few Deployments (at least `Staging` and `Production`).
|
|
364
|
-
|
|
300
|
+
## 4. Setting Up Revopush from Scratch
|
|
365
301
|
|
|
366
|
-
|
|
302
|
+
If you're new to Revopush and want to set up OTA updates for your app, follow these steps.
|
|
367
303
|
|
|
368
|
-
|
|
304
|
+
### 4.1 Logging In
|
|
369
305
|
|
|
370
306
|
```shell
|
|
371
307
|
revopush login
|
|
372
308
|
```
|
|
373
309
|
|
|
374
|
-
### 4.2
|
|
310
|
+
### 4.2 Creating Applications
|
|
375
311
|
|
|
376
|
-
|
|
377
|
-
To later easy manage them we suggest to give them meaningful names which will contain platform as a part of it.
|
|
378
|
-
|
|
379
|
-
#### iOS
|
|
312
|
+
#### For iOS
|
|
380
313
|
|
|
381
314
|
```shell
|
|
382
315
|
revopush app add myAmazingApp_ios
|
|
383
316
|
```
|
|
384
317
|
|
|
385
|
-
|
|
386
|
-
|
|
387
|
-
```shell
|
|
388
|
-
Successfully added the "myAmazingApp_ios" app, along with the following default deployments:
|
|
389
|
-
┌────────────┬────────────────────────────────────────┐
|
|
390
|
-
│ Name │ Deployment Key │
|
|
391
|
-
├────────────┼────────────────────────────────────────┤
|
|
392
|
-
│ Production │ PRer2J8xeLerKNZ16Klsf5yfdc8uVJHvdy5W-g │
|
|
393
|
-
├────────────┼────────────────────────────────────────┤
|
|
394
|
-
│ Staging │ vUOFPtZfOlhXHPEDE3nkf7nP6lJ4VJHvdy5W-g │
|
|
395
|
-
└────────────┴────────────────────────────────────────┘
|
|
396
|
-
````
|
|
397
|
-
|
|
398
|
-
#### Android
|
|
318
|
+
#### For Android:
|
|
399
319
|
|
|
400
320
|
```shell
|
|
401
321
|
revopush app add myAmazingApp_android
|
|
402
322
|
```
|
|
403
323
|
|
|
404
|
-
with
|
|
405
|
-
```shell
|
|
406
|
-
Successfully added the "myAmazingApp_android" app, along with the following default deployments:
|
|
407
|
-
┌────────────┬────────────────────────────────────────┐
|
|
408
|
-
│ Name │ Deployment Key │
|
|
409
|
-
├────────────┼────────────────────────────────────────┤
|
|
410
|
-
│ Production │ I0N9-8MCI-JAAmlrbjGRROGFFFvtVJHvdy5W-g │
|
|
411
|
-
├────────────┼────────────────────────────────────────┤
|
|
412
|
-
│ Staging │ kbAXqSrgEfLPcuvU3Fe0SCqX5HpOVJHvdy5W-g │
|
|
413
|
-
└────────────┴────────────────────────────────────────┘
|
|
414
|
-
````
|
|
415
|
-
|
|
416
|
-
### 4.3 Create deployments in Revopush
|
|
324
|
+
This will create your app along with default Staging and Production deployments.
|
|
417
325
|
|
|
418
|
-
|
|
326
|
+
### 4.3 Creating Deployments
|
|
419
327
|
|
|
420
|
-
|
|
328
|
+
If you need more deployments (e.g., Development, Testing), use:
|
|
421
329
|
|
|
422
330
|
```shell
|
|
423
331
|
revopush deployment add myAmazingApp_android Development
|
|
424
332
|
```
|
|
425
333
|
|
|
426
|
-
|
|
427
|
-
```shell
|
|
428
|
-
Successfully added the "Development" deployment with key "7Eh9BWf9FIr4_d33ay_oj4zeVoYqVJHvdy5W-g" to the "myAmazingApp_android" app.
|
|
429
|
-
```
|
|
430
|
-
|
|
431
|
-
To list all the deployments with their keys for the application run the following command:
|
|
334
|
+
List All Deployments:
|
|
432
335
|
|
|
433
336
|
```shell
|
|
434
337
|
revopush deployment ls myAmazingApp_android -k
|
|
435
338
|
```
|
|
436
339
|
|
|
437
|
-
|
|
438
|
-
|
|
439
|
-
```shell
|
|
440
|
-
┌─────────────┬────────────────────────────────────────┬─────────────────────┬──────────────────────┐
|
|
441
|
-
│ Name │ Deployment Key │ Update Metadata │ Install Metrics │
|
|
442
|
-
├─────────────┼────────────────────────────────────────┼─────────────────────┼──────────────────────┤
|
|
443
|
-
│ Development │ 7Eh9BWf9FIr4_d33ay_oj4zeVoYqVJHvdy5W-g │ No updates released │ No installs recorded │
|
|
444
|
-
├─────────────┼────────────────────────────────────────┼─────────────────────┼──────────────────────┤
|
|
445
|
-
│ Production │ D32ZXaQ-JybAzpLIiwZaNqh2XgLRVJHvdy5W-g │ No updates released │ No installs recorded │
|
|
446
|
-
├─────────────┼────────────────────────────────────────┼─────────────────────┼──────────────────────┤
|
|
447
|
-
│ Staging │ siXHHg5Pq1eFzFBdHKSMl23dqdxpVJHvdy5W-g │ No updates released │ No installs recorded │
|
|
448
|
-
└─────────────┴────────────────────────────────────────┴─────────────────────┴──────────────────────┘
|
|
449
|
-
```
|
|
450
|
-
|
|
451
|
-
## 5. Migrate your React Native application to Revopush OTA
|
|
452
|
-
|
|
453
|
-
The way how check for updates happens (eg on every app start, or fine-grained control involving user)
|
|
454
|
-
as well as when bundle is installed (eg immediately, on next restart or on next resume) heavy depends on
|
|
455
|
-
your application requirements and used version of React Native and CodePush plugin.
|
|
456
|
-
|
|
457
|
-
Please refer to official documentation of [react-native-code-push](https://github.com/microsoft/react-native-code-push/tree/master?tab=readme-ov-file#plugin-usage)
|
|
458
|
-
plugin to find an approach which will fit your needs.
|
|
340
|
+
## 5. Updating Your React Native App
|
|
459
341
|
|
|
460
|
-
|
|
461
|
-
( [iOS](https://github.com/microsoft/react-native-code-push/blob/master/docs/setup-ios.md),
|
|
462
|
-
[Android](https://github.com/microsoft/react-native-code-push/blob/master/docs/setup-android.md))
|
|
342
|
+
After setting up Revopush, update your React Native application to point to the Revopush server.
|
|
463
343
|
|
|
464
|
-
|
|
344
|
+
### 5.1 iOS Configuration
|
|
465
345
|
|
|
466
|
-
|
|
467
|
-
|
|
468
|
-
Open your app's `Info.plist` file and add a new entry named `CodePushServerURL` whose value is the URL of the Revopush API server.
|
|
346
|
+
1. **Open `Info.plist`:** Add the following entries:
|
|
469
347
|
|
|
470
348
|
```xml
|
|
349
|
+
<key>CodePushDeploymentKey</key>
|
|
350
|
+
<string>Your_Deployment_Key</string>
|
|
471
351
|
<key>CodePushServerURL</key>
|
|
472
352
|
<string>https://api.revopush.org</string>
|
|
473
353
|
```
|
|
474
354
|
|
|
475
|
-
|
|
476
|
-
(see section above how to get Deployment Key ).
|
|
477
|
-
|
|
478
|
-
```xml
|
|
479
|
-
<key>CodePushDeploymentKey</key>
|
|
480
|
-
<string>vUOFPtZfOlhXHPEDE3nkf7nP6lJ4VJHvdy5W-g</string>
|
|
481
|
-
```
|
|
482
|
-
|
|
483
|
-
As result for our `myAmazingApp_ios` app and `Staging` deployment `Info.plist` section related to CodePush will look like this:
|
|
355
|
+
An example for `myAmazingApp_ios` app and `Staging` deployment:
|
|
484
356
|
|
|
485
357
|
```xml
|
|
486
358
|
<key>CodePushDeploymentKey</key>
|
|
@@ -489,179 +361,101 @@ As result for our `myAmazingApp_ios` app and `Staging` deployment `Info.plist` s
|
|
|
489
361
|
<string>https://api.revopush.org</string>
|
|
490
362
|
```
|
|
491
363
|
|
|
492
|
-
|
|
493
|
-
[Code-Push options](https://github.com/microsoft/react-native-code-push/blob/master/docs/api-js.md#CodePushOptions)_
|
|
364
|
+
2. **Dynamic Deployment Key (Optional):** To switch deployments dynamically in your JavaScript code, use [Code-Push options](https://github.com/microsoft/react-native-code-push/blob/master/docs/api-js.md#CodePushOptions)
|
|
494
365
|
|
|
495
|
-
### 5.2
|
|
366
|
+
### 5.2 Android Configuration
|
|
496
367
|
|
|
497
|
-
Open
|
|
368
|
+
1. Open `strings.xml`: Add the following entries:
|
|
498
369
|
|
|
499
370
|
```xml
|
|
371
|
+
<string moduleConfig="true" name="CodePushDeploymentKey">Your_Deployment_Key</string>
|
|
500
372
|
<string moduleConfig="true" name="CodePushServerUrl">https://api.revopush.org</string>
|
|
501
373
|
```
|
|
502
374
|
|
|
503
|
-
|
|
504
|
-
(see section above how to get Deployment Key ).
|
|
505
|
-
|
|
506
|
-
```xml
|
|
507
|
-
<string moduleConfig="true" name="CodePushDeploymentKey">kbAXqSrgEfLPcuvU3Fe0SCqX5HpOVJHvdy5W-g</string>
|
|
508
|
-
```
|
|
509
|
-
|
|
510
|
-
As result for our `myAmazingApp_android` app and `Staging` deployment `strings.xml` section related to CodePush will look like this:
|
|
375
|
+
An example `myAmazingApp_android` app and `Staging` deployment `strings.xml`:
|
|
511
376
|
|
|
512
377
|
```xml
|
|
513
378
|
<string moduleConfig="true" name="CodePushDeploymentKey">kbAXqSrgEfLPcuvU3Fe0SCqX5HpOVJHvdy5W-g</string>
|
|
514
379
|
<string moduleConfig="true" name="CodePushServerUrl">https://api.revopush.org</string>
|
|
515
380
|
```
|
|
516
381
|
|
|
517
|
-
|
|
518
|
-
[Code-Push options](https://github.com/microsoft/react-native-code-push/blob/master/docs/api-js.md#CodePushOptions)_
|
|
519
|
-
|
|
382
|
+
2. **Dynamic Deployment Key (Optional):** To switch deployments dynamically in your JavaScript code, use [Code-Push options](https://github.com/microsoft/react-native-code-push/blob/master/docs/api-js.md#CodePushOptions)
|
|
520
383
|
|
|
521
|
-
## 6.
|
|
384
|
+
## 6. Releasing Updates
|
|
522
385
|
|
|
523
|
-
Once your app is configured
|
|
386
|
+
Once your app is configured, you can release updates to your users.
|
|
524
387
|
|
|
525
|
-
|
|
526
|
-
how to release updates for both platforms so you would adjust your scripts, CI/CD pipelines, etc if any.
|
|
527
|
-
|
|
528
|
-
### 6.1 Release updates for iOS
|
|
529
|
-
|
|
530
|
-
To push a bundle for iOS to the `Staging` deployment of the `rn2_ios` app, run the following command:
|
|
388
|
+
### 6.1 For iOS
|
|
531
389
|
|
|
532
390
|
```shell
|
|
533
391
|
revopush release-react rn2_ios ios -d Staging
|
|
534
392
|
```
|
|
535
393
|
|
|
536
|
-
|
|
537
|
-
|
|
394
|
+
**What Happens:**
|
|
395
|
+
- Bundles your JavaScript code.
|
|
396
|
+
- Uploads the bundle and assets to Revopush.
|
|
397
|
+
- Releases the update to the Staging deployment of rn2_ios.
|
|
538
398
|
|
|
539
|
-
|
|
399
|
+
**Success Message:**
|
|
540
400
|
|
|
541
401
|
```shell
|
|
542
|
-
|
|
543
|
-
|
|
544
|
-
Using the target binary version value "0.0.1" from "ios/rn2/Info.plist".
|
|
545
|
-
|
|
546
|
-
Running "react-native bundle" command:
|
|
547
|
-
|
|
548
|
-
node node_modules/react-native/cli.js bundle --assets-dest /var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush --bundle-output /var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush/main.jsbundle --dev false --entry-file index.js --platform ios
|
|
549
|
-
Welcome to Metro v0.81.0
|
|
550
|
-
Fast - Scalable - Integrated
|
|
551
|
-
|
|
552
|
-
info Writing bundle output to: /var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush/main.jsbundle
|
|
553
|
-
info Done writing bundle output
|
|
554
|
-
info Copying 1 asset files
|
|
555
|
-
info Done copying assets
|
|
556
|
-
private key was not provided
|
|
557
|
-
|
|
558
|
-
Releasing update contents to CodePush:
|
|
559
|
-
|
|
560
|
-
Upload progress:[==================================================] 100% 0.0s
|
|
402
|
+
...
|
|
561
403
|
Successfully released an update containing the "/var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush" directory to the "Staging" deployment of the "rn2_ios" app.
|
|
562
404
|
```
|
|
563
405
|
|
|
564
|
-
|
|
565
|
-
- `rn2_ios` is the application name in Revopush
|
|
566
|
-
- `Staging` is the deployment name in Revopush
|
|
567
|
-
- `ios` is the target platform
|
|
568
|
-
|
|
569
|
-
The entire list of available options such as bundle name, entry file, whether this release should be considered mandatory,
|
|
570
|
-
rercentage of users this release should be immediately available to and many others for the `release-react` command can be found in CLI
|
|
571
|
-
|
|
572
|
-
```shell
|
|
573
|
-
revopush release-react -h
|
|
574
|
-
```
|
|
575
|
-
|
|
576
|
-
### 6.2 Release updates for Android
|
|
577
|
-
|
|
578
|
-
To push a bundle for Android to the `appcenter-Staging` deployment of the `rn2_android` app, run the following command:
|
|
406
|
+
### 6.2 For Android
|
|
579
407
|
|
|
580
408
|
```shell
|
|
581
409
|
revopush release-react rn2_android android -d appcenter-Staging
|
|
582
410
|
```
|
|
583
411
|
|
|
584
|
-
|
|
585
|
-
|
|
586
|
-
Upon successful release, you will see something like this:
|
|
587
|
-
|
|
588
|
-
```shell
|
|
589
|
-
Detecting android app version:
|
|
590
|
-
|
|
591
|
-
Using the target binary version value "1.0" from "android/app/build.gradle".
|
|
592
|
-
|
|
593
|
-
Running "react-native bundle" command:
|
|
594
|
-
|
|
595
|
-
node node_modules/react-native/cli.js bundle --assets-dest /var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush --bundle-output /var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush/index.android.bundle --dev false --entry-file index.js --platform android
|
|
596
|
-
Welcome to Metro v0.81.0
|
|
597
|
-
Fast - Scalable - Integrated
|
|
412
|
+
**What Happens:**
|
|
598
413
|
|
|
599
|
-
|
|
600
|
-
|
|
601
|
-
|
|
602
|
-
info Done copying assets
|
|
603
|
-
private key was not provided
|
|
414
|
+
- Bundles your JavaScript code.
|
|
415
|
+
- Uploads the bundle and assets to Revopush.
|
|
416
|
+
- Releases the update to the appcenter-Staging deployment of rn2_android.
|
|
604
417
|
|
|
605
|
-
|
|
418
|
+
**Success Message:**
|
|
606
419
|
|
|
607
|
-
|
|
420
|
+
```shell
|
|
421
|
+
...
|
|
608
422
|
Successfully released an update containing the "/var/folders/my/lwrczz7503g5911_wf51jsvm0000gp/T/CodePush" directory to the "appcenter-Staging" deployment of the "rn2_android" app.
|
|
609
423
|
```
|
|
610
424
|
|
|
611
|
-
|
|
612
|
-
- `rn2_android` is the application name in Revopush
|
|
613
|
-
- `appcenter-Staging` is the deployment name in Revopush
|
|
614
|
-
- `android` is the target platform
|
|
425
|
+
### 6.3 Additional Options
|
|
615
426
|
|
|
616
|
-
|
|
617
|
-
rercentage of users this release should be immediately available to and many others for the `release-react` command can be found in CLI
|
|
427
|
+
For more customization, view all options:
|
|
618
428
|
|
|
619
429
|
```shell
|
|
620
430
|
revopush release-react -h
|
|
621
431
|
```
|
|
622
432
|
|
|
623
|
-
|
|
433
|
+
## 7. Summary and Resources
|
|
624
434
|
|
|
625
|
-
The release history for deployment of the app can be viewed in Revopush UI or if you prefer CLI by running the following command:
|
|
626
435
|
|
|
627
|
-
|
|
628
|
-
|
|
629
|
-
|
|
436
|
+
Migrating your OTA updates from Appcenter to Revopush is straightforward with our CLI tools.
|
|
437
|
+
Whether you're migrating existing applications or setting up new ones,
|
|
438
|
+
Revopush offers a seamless experience with familiar commands and robust features.
|
|
630
439
|
|
|
631
|
-
with response like
|
|
632
440
|
|
|
633
|
-
|
|
634
|
-
|
|
635
|
-
|
|
636
|
-
|
|
637
|
-
|
|
638
|
-
|
|
639
|
-
|
|
640
|
-
|
|
641
|
-
|
|
642
|
-
|
|
643
|
-
|
|
644
|
-
|
|
645
|
-
|
|
646
|
-
|
|
647
|
-
For your convenience we created a table with the most common commands you may need to use in Revopush CLI
|
|
648
|
-
(with their analogs in Appcenter CLI):
|
|
649
|
-
|
|
650
|
-
| Appcenter | Revopush | Comment |
|
|
651
|
-
|:---------------------------------|:-----------------------|:------------------------------------------------------------------------------------------------------------------------------------------------:|
|
|
652
|
-
| appcenter login | revopush login | Log in |
|
|
653
|
-
| appcenter codepush deployment | revopush deployment | View and manage your app deployments |
|
|
654
|
-
| appcenter apps | revopush app | View and manage your apps |
|
|
655
|
-
| appcenter codepush patch | revopush patch | Update the metadata for an existing CodePush release |
|
|
656
|
-
| appcenter codepush promote | revopush promote | Create a new release for the destination deployment, which includes the exact code and metadata from the latest release of the source deployment |
|
|
657
|
-
| appcenter codepush release-react | revopush release-react | Release a React Native update to an app deployment |
|
|
658
|
-
| appcenter codepush rollback | revopush rollback | Rollback a deployment to a previous release |
|
|
659
|
-
| appcenter logout | revopush logout | Log out |
|
|
660
|
-
|
|
661
|
-
### Resources which maybe helpful:
|
|
441
|
+
**Quick Command Reference:**
|
|
442
|
+
|
|
443
|
+
| Appcenter | Revopush | Comment |
|
|
444
|
+
|:---------------------------------|:------------------------|:------------------------------------------------------------------------------------------------------------------------------------------------:|
|
|
445
|
+
| `appcenter login` | `revopush login` | Log in |
|
|
446
|
+
| `appcenter codepush deployment` | `revopush deployment` | View and manage your app deployments |
|
|
447
|
+
| `appcenter apps` | `revopush app` | View and manage your apps |
|
|
448
|
+
| `appcenter codepush patch` | `revopush patch` | Update the metadata for an existing CodePush release |
|
|
449
|
+
| `appcenter codepush promote` | `revopush promote` | Create a new release for the destination deployment, which includes the exact code and metadata from the latest release of the source deployment |
|
|
450
|
+
| `appcenter codepush release-react`| `revopush release-react` | Release a React Native update to an app deployment |
|
|
451
|
+
| `appcenter codepush rollback` | `revopush rollback` | Rollback a deployment to a previous release |
|
|
452
|
+
| `appcenter logout` | `revopush logout` | Log out |
|
|
453
|
+
|
|
454
|
+
### **Helpful Resources:**
|
|
662
455
|
- React Native CodePush [GitHub](https://github.com/microsoft/react-native-code-push)
|
|
663
456
|
- React Native Client SDK [docs](https://learn.microsoft.com/en-us/appcenter/distribution/codepush/rn-overview)
|
|
664
457
|
- Best practices for [Multi-Deployment Testing](https://learn.microsoft.com/en-us/appcenter/distribution/codepush/rn-deployment)
|
|
665
458
|
|
|
666
|
-
|
|
667
|
-
|
|
459
|
+
**Need More Help?**
|
|
460
|
+
Contact our support team at [support@revopush.org](mailto:support@revopush.org) or visit our [website](https://revopush.org).
|
|
461
|
+
|
package/guied.md
ADDED
|
@@ -0,0 +1,351 @@
|
|
|
1
|
+
Improving the readability and simplicity of your guide will make it more accessible to new users, ensuring they can easily follow the steps to install the CLI and understand its functionality from the outset. Here are several suggestions to enhance your article:
|
|
2
|
+
|
|
3
|
+
### 1. **Clarify the Introduction**
|
|
4
|
+
- **Simplify Language:** Use straightforward language to explain what the CLI does and how to install it right from the beginning.
|
|
5
|
+
- **Highlight Key Points Early:** Mention the installation process and the primary functions of the CLI within the first few sentences.
|
|
6
|
+
|
|
7
|
+
**Revised Introduction Example:**
|
|
8
|
+
```markdown
|
|
9
|
+
### 1. Introduction
|
|
10
|
+
|
|
11
|
+
Welcome! This guide will help you migrate your Over-the-Air (OTA) updates from Appcenter to Revopush. With Revopush's Command Line Interface (CLI), you can easily push updates directly to your users' devices without needing to go through app stores.
|
|
12
|
+
|
|
13
|
+
**What You'll Learn:**
|
|
14
|
+
- How to install the Revopush CLI
|
|
15
|
+
- Migrating your existing OTA updates from Appcenter
|
|
16
|
+
- Setting up and managing your applications and deployments in Revopush
|
|
17
|
+
- Updating your React Native app to use Revopush for OTA updates
|
|
18
|
+
|
|
19
|
+
Let’s get started!
|
|
20
|
+
```
|
|
21
|
+
|
|
22
|
+
### 2. **Streamline the Table of Contents**
|
|
23
|
+
- **Use Clear Headings:** Ensure each section title clearly reflects its content.
|
|
24
|
+
- **Simplify Navigation:** Number sections sequentially and use consistent terminology.
|
|
25
|
+
|
|
26
|
+
**Revised Table of Contents Example:**
|
|
27
|
+
```markdown
|
|
28
|
+
**Guide Overview:**
|
|
29
|
+
1. Introduction
|
|
30
|
+
2. Prerequisites
|
|
31
|
+
- 2.1 Installing Required Tools
|
|
32
|
+
- 2.2 Setting Up Revopush CLI
|
|
33
|
+
3. Migrating from Appcenter to Revopush
|
|
34
|
+
- 3.1 Logging In
|
|
35
|
+
- 3.2 Migrating Applications and Deployments
|
|
36
|
+
4. Setting Up Revopush from Scratch
|
|
37
|
+
- 4.1 Logging In
|
|
38
|
+
- 4.2 Creating Applications
|
|
39
|
+
- 4.3 Creating Deployments
|
|
40
|
+
5. Updating Your React Native App
|
|
41
|
+
- 5.1 iOS Configuration
|
|
42
|
+
- 5.2 Android Configuration
|
|
43
|
+
6. Releasing Updates
|
|
44
|
+
- 6.1 For iOS
|
|
45
|
+
- 6.2 For Android
|
|
46
|
+
7. Summary and Resources
|
|
47
|
+
```
|
|
48
|
+
|
|
49
|
+
### 3. **Enhance Prerequisites Section**
|
|
50
|
+
- **Break Down Information:** Separate tool installations and account setups for clarity.
|
|
51
|
+
- **Use Bullet Points:** Make requirements easy to scan.
|
|
52
|
+
|
|
53
|
+
**Revised Prerequisites Example:**
|
|
54
|
+
```markdown
|
|
55
|
+
### 2. Prerequisites
|
|
56
|
+
|
|
57
|
+
Before you begin, ensure you have the following:
|
|
58
|
+
|
|
59
|
+
- **Developer Tools Installed:**
|
|
60
|
+
- [Node.js](https://nodejs.org/)
|
|
61
|
+
- npm or Yarn
|
|
62
|
+
- npx
|
|
63
|
+
- [Android Studio](https://developer.android.com/studio)
|
|
64
|
+
- [Xcode](https://developer.apple.com/xcode/)
|
|
65
|
+
- [Visual Studio Code](https://code.visualstudio.com/)
|
|
66
|
+
|
|
67
|
+
- **Permissions:**
|
|
68
|
+
- Ability to install npm packages globally.
|
|
69
|
+
|
|
70
|
+
- **Revopush Account:**
|
|
71
|
+
- Sign up at [Revopush](https://revopush.org/) using GitHub or Google for authentication.
|
|
72
|
+
|
|
73
|
+
- **(If Migrating) Appcenter Access:**
|
|
74
|
+
- Ensure you have access to your existing Appcenter account and its CLI.
|
|
75
|
+
```
|
|
76
|
+
|
|
77
|
+
### 4. **Improve CLI Installation Instructions**
|
|
78
|
+
- **Highlight Commands:** Use code blocks for commands to differentiate them from the text.
|
|
79
|
+
- **Add Explanations:** Briefly explain what each command does.
|
|
80
|
+
|
|
81
|
+
**Revised CLI Installation Example:**
|
|
82
|
+
```markdown
|
|
83
|
+
#### 2.2 Setting Up Revopush CLI
|
|
84
|
+
|
|
85
|
+
**Install Revopush CLI:**
|
|
86
|
+
```bash
|
|
87
|
+
npm install -g @revopush/code-push-cli
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
**Update Revopush CLI to the Latest Version:**
|
|
91
|
+
```bash
|
|
92
|
+
npm update -g @revopush/code-push-cli
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
**Verify Installation:**
|
|
96
|
+
```bash
|
|
97
|
+
revopush -h
|
|
98
|
+
```
|
|
99
|
+
This command displays the Revopush CLI version and available commands.
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
### 5. **Use Visual Aids and Formatting**
|
|
103
|
+
- **Add Screenshots:** Visual representations of CLI outputs or UI steps can help users follow along.
|
|
104
|
+
- **Consistent Formatting:** Use headings, subheadings, bullet points, and numbered lists consistently to organize information.
|
|
105
|
+
|
|
106
|
+
### 6. **Simplify Migration Steps**
|
|
107
|
+
- **Combine Similar Steps:** Merge sections that have overlapping instructions to reduce redundancy.
|
|
108
|
+
- **Provide Clear Examples:** Use consistent naming conventions in examples to avoid confusion.
|
|
109
|
+
|
|
110
|
+
**Revised Migration Steps Example:**
|
|
111
|
+
```markdown
|
|
112
|
+
### 3. Migrating from Appcenter to Revopush
|
|
113
|
+
|
|
114
|
+
Follow these steps if you're moving your OTA updates from Appcenter to Revopush.
|
|
115
|
+
|
|
116
|
+
#### 3.1 Logging In
|
|
117
|
+
|
|
118
|
+
**Log in to Appcenter CLI:**
|
|
119
|
+
```bash
|
|
120
|
+
appcenter login
|
|
121
|
+
```
|
|
122
|
+
|
|
123
|
+
**Log in to Revopush CLI:**
|
|
124
|
+
```bash
|
|
125
|
+
revopush login
|
|
126
|
+
```
|
|
127
|
+
|
|
128
|
+
#### 3.2 Migrating Applications and Deployments
|
|
129
|
+
|
|
130
|
+
1. **List Your Appcenter Apps:**
|
|
131
|
+
```bash
|
|
132
|
+
appcenter apps list
|
|
133
|
+
```
|
|
134
|
+
Example Output:
|
|
135
|
+
```
|
|
136
|
+
johndoe/rn2_android
|
|
137
|
+
johndoe/rn2_ios
|
|
138
|
+
```
|
|
139
|
+
|
|
140
|
+
2. **Create Corresponding Revopush Apps:**
|
|
141
|
+
- Remove the username prefix when creating apps in Revopush.
|
|
142
|
+
```bash
|
|
143
|
+
revopush app add rn2_ios
|
|
144
|
+
revopush app add rn2_android
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
3. **Replicate Deployments:**
|
|
148
|
+
- List Appcenter deployments:
|
|
149
|
+
```bash
|
|
150
|
+
appcenter codepush deployment list -k -a johndoe/rn2_ios
|
|
151
|
+
```
|
|
152
|
+
- Add the same deployments in Revopush with identical keys:
|
|
153
|
+
```bash
|
|
154
|
+
revopush deployment add rn2_ios appcenter_Staging -k <Staging_Key>
|
|
155
|
+
revopush deployment add rn2_ios appcenter_Production -k <Production_Key>
|
|
156
|
+
```
|
|
157
|
+
- Repeat for Android:
|
|
158
|
+
```bash
|
|
159
|
+
appcenter codepush deployment list -k -a johndoe/rn2_android
|
|
160
|
+
revopush deployment add rn2_android appcenter_Staging -k <Staging_Key>
|
|
161
|
+
revopush deployment add rn2_android appcenter_Production -k <Production_Key>
|
|
162
|
+
```
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
### 7. **Provide Clear Instructions for New Setups**
|
|
166
|
+
- **Separate New Users and Migrators:** Clearly differentiate steps for users starting fresh versus those migrating.
|
|
167
|
+
- **Use Step-by-Step Guides:** Break down each action into simple, numbered steps.
|
|
168
|
+
|
|
169
|
+
**Revised New Setup Example:**
|
|
170
|
+
```markdown
|
|
171
|
+
### 4. Setting Up Revopush from Scratch
|
|
172
|
+
|
|
173
|
+
If you're new to Revopush and want to set up OTA updates for your app, follow these steps.
|
|
174
|
+
|
|
175
|
+
#### 4.1 Logging In
|
|
176
|
+
|
|
177
|
+
```bash
|
|
178
|
+
revopush login
|
|
179
|
+
```
|
|
180
|
+
|
|
181
|
+
#### 4.2 Creating Your Application
|
|
182
|
+
|
|
183
|
+
**For iOS:**
|
|
184
|
+
```bash
|
|
185
|
+
revopush app add myAmazingApp_ios
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
**For Android:**
|
|
189
|
+
```bash
|
|
190
|
+
revopush app add myAmazingApp_android
|
|
191
|
+
```
|
|
192
|
+
|
|
193
|
+
This will create your app along with default **Staging** and **Production** deployments.
|
|
194
|
+
|
|
195
|
+
#### 4.3 Creating Additional Deployments
|
|
196
|
+
|
|
197
|
+
If you need more deployments (e.g., Development, Testing), use:
|
|
198
|
+
|
|
199
|
+
```bash
|
|
200
|
+
revopush deployment add myAmazingApp_android Development
|
|
201
|
+
```
|
|
202
|
+
|
|
203
|
+
**List All Deployments:**
|
|
204
|
+
```bash
|
|
205
|
+
revopush deployment ls myAmazingApp_android -k
|
|
206
|
+
```
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
### 8. **Simplify Configuration Steps**
|
|
210
|
+
- **Use Clear Code Blocks:** Ensure code snippets are correctly formatted and easy to copy.
|
|
211
|
+
- **Explain Each Configuration Change:** Briefly describe why each change is necessary.
|
|
212
|
+
|
|
213
|
+
**Revised Configuration Example:**
|
|
214
|
+
```markdown
|
|
215
|
+
### 5. Updating Your React Native App to Use Revopush OTA
|
|
216
|
+
|
|
217
|
+
After setting up Revopush, update your React Native application to point to the Revopush server.
|
|
218
|
+
|
|
219
|
+
#### 5.1 iOS Configuration
|
|
220
|
+
|
|
221
|
+
1. **Open `Info.plist`:** Add the following entries:
|
|
222
|
+
```xml
|
|
223
|
+
<key>CodePushDeploymentKey</key>
|
|
224
|
+
<string>Your_Deployment_Key</string>
|
|
225
|
+
<key>CodePushServerURL</key>
|
|
226
|
+
<string>https://api.revopush.org</string>
|
|
227
|
+
```
|
|
228
|
+
|
|
229
|
+
2. **Dynamic Deployment Key (Optional):** To switch deployments dynamically in your JavaScript code, use Code-Push options.
|
|
230
|
+
|
|
231
|
+
#### 5.2 Android Configuration
|
|
232
|
+
|
|
233
|
+
1. **Open `strings.xml`:** Add the following entries:
|
|
234
|
+
```xml
|
|
235
|
+
<string moduleConfig="true" name="CodePushDeploymentKey">Your_Deployment_Key</string>
|
|
236
|
+
<string moduleConfig="true" name="CodePushServerUrl">https://api.revopush.org</string>
|
|
237
|
+
```
|
|
238
|
+
|
|
239
|
+
2. **Dynamic Deployment Key (Optional):** Override the deployment key in your JavaScript code using Code-Push options.
|
|
240
|
+
```
|
|
241
|
+
|
|
242
|
+
### 9. **Enhance the Release Process Section**
|
|
243
|
+
- **Consistent Instructions:** Ensure steps for iOS and Android are parallel for easier comparison.
|
|
244
|
+
- **Highlight Important Notes:** Use callouts or italics to emphasize crucial information.
|
|
245
|
+
|
|
246
|
+
**Revised Release Process Example:**
|
|
247
|
+
```markdown
|
|
248
|
+
### 6. Releasing Updates
|
|
249
|
+
|
|
250
|
+
Once your app is configured, you can release updates to your users.
|
|
251
|
+
|
|
252
|
+
#### 6.1 Releasing for iOS
|
|
253
|
+
|
|
254
|
+
```bash
|
|
255
|
+
revopush release-react rn2_ios ios -d Staging
|
|
256
|
+
```
|
|
257
|
+
|
|
258
|
+
**What Happens:**
|
|
259
|
+
- Bundles your JavaScript code.
|
|
260
|
+
- Uploads the bundle and assets to Revopush.
|
|
261
|
+
- Releases the update to the **Staging** deployment of **rn2_ios**.
|
|
262
|
+
|
|
263
|
+
**Success Message:**
|
|
264
|
+
```
|
|
265
|
+
Successfully released an update to the "Staging" deployment of the "rn2_ios" app.
|
|
266
|
+
```
|
|
267
|
+
|
|
268
|
+
#### 6.2 Releasing for Android
|
|
269
|
+
|
|
270
|
+
```bash
|
|
271
|
+
revopush release-react rn2_android android -d appcenter-Staging
|
|
272
|
+
```
|
|
273
|
+
|
|
274
|
+
**What Happens:**
|
|
275
|
+
- Bundles your JavaScript code.
|
|
276
|
+
- Uploads the bundle and assets to Revopush.
|
|
277
|
+
- Releases the update to the **appcenter-Staging** deployment of **rn2_android**.
|
|
278
|
+
|
|
279
|
+
**Success Message:**
|
|
280
|
+
```
|
|
281
|
+
Successfully released an update to the "appcenter-Staging" deployment of the "rn2_android" app.
|
|
282
|
+
```
|
|
283
|
+
|
|
284
|
+
**Additional Options:**
|
|
285
|
+
For more customization, view all options:
|
|
286
|
+
```bash
|
|
287
|
+
revopush release-react -h
|
|
288
|
+
```
|
|
289
|
+
```
|
|
290
|
+
|
|
291
|
+
### 10. **Consolidate Summary and Resources**
|
|
292
|
+
- **Recap Key Points:** Briefly summarize the migration or setup process.
|
|
293
|
+
- **Provide Clear Resource Links:** Ensure all resources are easily accessible and clearly labeled.
|
|
294
|
+
|
|
295
|
+
**Revised Summary Example:**
|
|
296
|
+
```markdown
|
|
297
|
+
### 7. Summary
|
|
298
|
+
|
|
299
|
+
Migrating your OTA updates from Appcenter to Revopush is straightforward with our CLI tools. Whether you're migrating existing applications or setting up new ones, Revopush offers a seamless experience with familiar commands and robust features.
|
|
300
|
+
|
|
301
|
+
**Quick Command Reference:**
|
|
302
|
+
|
|
303
|
+
| Appcenter Command | Revopush Command | Description |
|
|
304
|
+
|---------------------------------------|---------------------------------------|------------------------------------------------|
|
|
305
|
+
| `appcenter login` | `revopush login` | Log in to the CLI |
|
|
306
|
+
| `appcenter codepush deployment` | `revopush deployment` | Manage app deployments |
|
|
307
|
+
| `appcenter apps` | `revopush app` | Manage your applications |
|
|
308
|
+
| `appcenter codepush release-react` | `revopush release-react` | Release a React Native update |
|
|
309
|
+
| `appcenter logout` | `revopush logout` | Log out of the CLI |
|
|
310
|
+
|
|
311
|
+
**Helpful Resources:**
|
|
312
|
+
- [React Native CodePush GitHub](https://github.com/microsoft/react-native-code-push)
|
|
313
|
+
- [React Native Client SDK Documentation](https://docs.revopush.org/client-sdk)
|
|
314
|
+
- [Best Practices for Multi-Deployment Testing](https://docs.revopush.org/multi-deployment-testing)
|
|
315
|
+
- **Support:** Reach out to us at [support@revopush.org](mailto:support@revopush.org) for any questions or feedback.
|
|
316
|
+
```
|
|
317
|
+
|
|
318
|
+
### 11. **General Style Improvements**
|
|
319
|
+
- **Consistent Terminology:** Ensure terms like "deployments," "applications," and "CLI" are used consistently.
|
|
320
|
+
- **Active Voice:** Use active voice to make instructions clearer (e.g., "Run this command" instead of "This command should be run").
|
|
321
|
+
- **Avoid Redundancy:** Remove repetitive information to keep the guide concise.
|
|
322
|
+
|
|
323
|
+
### 12. **Add a Troubleshooting Section**
|
|
324
|
+
- **Common Issues:** Address frequent problems users might encounter during migration or setup.
|
|
325
|
+
- **Solutions and Tips:** Provide clear solutions or point to resources where users can get help.
|
|
326
|
+
|
|
327
|
+
**Example Troubleshooting Section:**
|
|
328
|
+
```markdown
|
|
329
|
+
### 8. Troubleshooting
|
|
330
|
+
|
|
331
|
+
**Issue:** Unable to install Revopush CLI.
|
|
332
|
+
- **Solution:** Ensure you have the latest version of npm installed. Run `npm install -g npm@latest` and try installing the CLI again.
|
|
333
|
+
|
|
334
|
+
**Issue:** Deployment keys not recognized.
|
|
335
|
+
- **Solution:** Double-check that you've copied the correct keys from Appcenter and added them to Revopush. Use `revopush deployment ls <app_name> -k` to verify.
|
|
336
|
+
|
|
337
|
+
**Need More Help?**
|
|
338
|
+
Contact our support team at [support@revopush.org](mailto:support@revopush.org) or visit our [documentation](https://docs.revopush.org).
|
|
339
|
+
```
|
|
340
|
+
|
|
341
|
+
### 13. **Ensure Accessibility**
|
|
342
|
+
- **Readable Fonts and Colors:** If presenting this guide on a website, ensure the text is easily readable with appropriate font sizes and color contrasts.
|
|
343
|
+
- **Alt Text for Images:** If adding screenshots, include descriptive alt text for accessibility.
|
|
344
|
+
|
|
345
|
+
### 14. **Test the Guide**
|
|
346
|
+
- **User Feedback:** Have someone unfamiliar with the process follow the guide to identify confusing sections.
|
|
347
|
+
- **Iterate Based on Feedback:** Use the feedback to make necessary adjustments for clarity and simplicity.
|
|
348
|
+
|
|
349
|
+
---
|
|
350
|
+
|
|
351
|
+
Implementing these suggestions will make your guide more user-friendly, ensuring that new users can effortlessly understand and follow the process of installing the Revopush CLI and migrating their OTA updates from Appcenter.
|