You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
@@ -180,122 +180,140 @@ replacing `<YOUR_VERSION>` with the version you want. Then create a PR and merge
180
180
Creating the release for Ubuntu 18.04 ([arduino/arduino-ide#2018](https://github.com/arduino/arduino-ide/issues/2018)) and macOS M1 ([arduino/arduino-ide#408](https://github.com/arduino/arduino-ide/issues/408)) is a manual procedure.
181
181
182
182
### Ubuntu 18.04
183
-
- Prerequisites:
184
-
- Ask the DevOps team for an EC2 instance with at least 8 GB of RAM.
185
-
- Your account must have access to the staging AWS environment.
186
-
- You have VPN connection to staging.
187
-
- Setup:
188
-
- To install all required dependencies, run the following script:
- You have to upload the following artifacts from `./arduino-ide/electron/build/dist` to S3:
221
-
- `arduino-ide_${VERSION}_Linux_64bit.AppImage`,
222
-
- `arduino-ide_${VERSION}_Linux_64bit.zip`, and
223
-
- `stable-linux.yml`
224
-
225
-
### macOS M1
226
-
- Prerequisites:
227
-
- You need access to the shared Mac Mini at Toolbox. Use TeamViewer.
228
-
- You have access to the `FT Web Tooling` 1Password vault.
229
-
- Setup:
230
-
- Download the `Pro-IDE-Certificates.p12` file from the `Arduino Pro IDE Apple Developer ID Certificate .p12 format` 1Password vault item and put it somewhere on the Mac Mini. This example assumes you put the `.p12` file in the `arduino-ide` repository root, and your `cwd` is also in the `arduino-ide` repository root.
231
-
- The following environment variables must be available from the shell:
232
-
- `AC_PASSWORD`: From the `Arduino Apple developer ID App Specific Password` 1Password vault item
233
-
- `AC_USERNAME`: From the `Arduino Apple developer ID App Specific Password` 1Password vault item
234
-
- `AC_TEAM_ID`: "KT7ZWMCJT"
235
-
- `CSC_KEY_PASSWORD`: from the `Arduino Pro IDE Apple Developer ID certificate keychain password` 1Password vault item
236
-
- `CSC_LINK`: Path to the `Pro-IDE-Certificates.p12` file on the Mac Mini
237
-
- `IS_RELEASE`: "true"
238
-
- `CAN_SIGN`: "true"
239
-
- `MACOS_FORCE_NOTARIZE`: "true"
240
-
241
-
```sh
242
-
export AC_PASSWORD="***"
243
-
export AC_USERNAME="***"
244
-
export AC_TEAM_ID="7KT7ZWMCJT"
245
-
export CSC_KEY_PASSWORD="***"
246
-
export CSC_LINK="`pwd`/Pro-IDE-Certificates.p12"
247
-
export IS_RELEASE="true"
248
-
export CAN_SIGN="true"
249
-
export MACOS_FORCE_NOTARIZE="true"
250
-
export CI="true"
251
-
```
252
-
253
-
- Build:
212
+
- Set the environment variables to mimic a CI build:
- Download the `Pro-IDE-Certificates.p12` file from the `Arduino Pro IDE Apple Developer ID Certificate .p12 format` 1Password vault item and put it somewhere on the Mac Mini. This example assumes you put the `.p12` file in the `arduino-ide` repository root, and your `cwd` is also in the `arduino-ide` repository root.
243
+
- The following environment variables must be available from the shell:
259
244
260
-
Since you cannot drag and drop via TeamViewer, you will install the app from a command line. This example puts the IDE2 into the Desktop. Do **NOT** try to bypass the installation with a double click and open from the UI. The `node_modules` folder of the source code is implicitly in the `$PATH`, and you want to verify if the app is fully functional without the `node_modules` folder.
245
+
- `AC_PASSWORD`: From the `Arduino Apple developer ID App Specific Password` 1Password vault item
246
+
- `AC_USERNAME`: From the `Arduino Apple developer ID App Specific Password` 1Password vault item
247
+
- `AC_TEAM_ID`: "KT7ZWMCJT"
248
+
- `CSC_KEY_PASSWORD`: from the `Arduino Pro IDE Apple Developer ID certificate keychain password` 1Password vault item
249
+
- `CSC_LINK`: Path to the `Pro-IDE-Certificates.p12` file on the Mac Mini
&&~/Desktop/Arduino\ IDE.app/Contents/MacOS/Arduino\ IDE
255
+
export AC_PASSWORD="***"
256
+
export AC_USERNAME="***"
257
+
export AC_TEAM_ID="7KT7ZWMCJT"
258
+
export CSC_KEY_PASSWORD="***"
259
+
export CSC_LINK="`pwd`/Pro-IDE-Certificates.p12"
260
+
export IS_RELEASE="true"
261
+
export CAN_SIGN="true"
262
+
export MACOS_FORCE_NOTARIZE="true"
263
+
export CI="true"
269
264
```
270
265
271
-
- Cleanup:
272
-
- You **MUST** close the shell after the build.
273
-
- You **MUST** delete the `.p12` file and empty the trash afterward.
274
-
275
-
- Artifacts:
276
-
- You have to upload the following artifacts from `./arduino-ide/electron/build/dist` to S3, but first, you must create the final channel file from the `latest-mac.yaml`:
277
-
- `arduino-ide_${VERSION}_macOS_arm64.dmg`,
278
-
- `arduino-ide_${VERSION}_macOS_arm64.zip`, and
279
-
- `stable-mac.yml`
280
-
- To create the final channel file, do the followings:
281
-
- Copy the `stable-mac.yml` file from the Mac Mini to a folder and rename it to `stable-mac-ARM64.yml`.
282
-
- Download the `stable-mac.yaml` produced by GitHub Actions from the latest release, rename it to `stable-mac-X64.yml`, and put it in the same folder where you put the file from the Mac Mini.
- You have the merged channel file that you need to upload to S3.
266
+
- Build:
267
+
268
+
```sh
269
+
./scripts/package.sh
270
+
```
271
+
272
+
> Make sure to change directory, and execute the script from the root of the `arduino-ide` repository.
273
+
274
+
- Verify:
275
+
276
+
Since you cannot drag and drop via TeamViewer, you will install the app from a command line. This example puts the IDE2 into the Desktop. Do **NOT** try to bypass the installation with a double click and open from the UI. The `node_modules` folder of the source code is implicitly in the `$PATH`, and you want to verify if the app is fully functional without the `node_modules` folder.
&&~/Desktop/Arduino\ IDE.app/Contents/MacOS/Arduino\ IDE
285
+
```
286
+
287
+
- Cleanup:
288
+
289
+
- You **MUST** close the shell after the build.
290
+
- You **MUST** delete the `.p12` file and empty the trash afterward.
291
+
292
+
- Artifacts:
293
+
- You have to upload the following artifacts from `./arduino-ide/electron/build/dist` to S3, but first, you must create the final channel file from the `latest-mac.yaml`:
294
+
- `arduino-ide_${VERSION}_macOS_arm64.dmg`,
295
+
- `arduino-ide_${VERSION}_macOS_arm64.zip`, and
296
+
- `stable-mac.yml`
297
+
- To create the final channel file, do the followings:
298
+
- Copy the `stable-mac.yml` file from the Mac Mini to a folder and rename it to `stable-mac-ARM64.yml`.
299
+
- Download the `stable-mac.yaml` produced by GitHub Actions from the latest release, rename it to `stable-mac-X64.yml`, and put it in the same folder where you put the file from the Mac Mini.
- You have the merged channel file that you need to upload to S3.
288
305
289
306
### FAQ
290
-
- Q: I see no `stable` channel files, only `latest`.
291
-
- A: You forgot to set the `CI=true` environment variable.
292
307
293
-
----
308
+
- Q: I see no `stable` channel files, only `latest`.
309
+
- A: You forgot to set the `CI=true` environment variable.
310
+
311
+
---
294
312
295
-
- Q: How to connect to the EC2 instance?
296
-
- A: DevOps will give you a temporary link to the private key. Create a file `username_ip.pem`in your cwd, copy the private key into the file, open a shell, and execute `ssh -i "username_ip.pem" username@ip`. DevOps will tell you the `username` and the `ip`. Do not forget the VPN.
313
+
- Q: How to connect to the EC2 instance?
314
+
- A: DevOps will give you a temporary link to the private key. Create a file `username_ip.pem`in your cwd, copy the private key into the file, open a shell, and execute `ssh -i "username_ip.pem" username@ip`. DevOps will tell you the `username` and the `ip`. Do not forget the VPN.
297
315
298
-
----
316
+
---
299
317
300
-
- Q: How to download the files from the EC2 instance?
0 commit comments