Skip to content

Navigation Menu

Sign in
Appearance settings

Search code, repositories, users, issues, pull requests...

Provide feedback

We read every piece of feedback, and take your input very seriously.

Saved searches

Use saved searches to filter your results more quickly

Sign up
Appearance settings

feat(release): document manual release procedure #2129

New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Closed
kittaakos wants to merge 11 commits into main from manual-release
Closed

Conversation

@kittaakos
Copy link
Contributor

@kittaakos kittaakos commented Jul 6, 2023
edited
Loading

Motivation

The macOS M1 and Linux 18.04 builds are manual procedures. This PR documents it; preview link.

Change description

Other information

Reviewer checklist

  • PR addresses a single concern.
  • The PR has no duplicates (please search among the Pull Requests before creating one)
  • PR title and description are properly filled.
  • Docs have been added / updated (for bug fixes / features)

@kittaakos kittaakos added topic: documentation Related to documentation for the project type: enhancement Proposed improvement labels Jul 6, 2023
@kittaakos kittaakos self-assigned this Jul 6, 2023
Copy link
Contributor

@per1234 per1234 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

There is some odd and inconsistent formatting of the Markdown in release-procedure.md please do a run of Prettier on the file to standardize the formatting:

npx prettier -w docs/internal/release-procedure.md


### Ubuntu 18.04
- Prerequisites:
- Ask the DevOps team for an EC2 instance with at least 8 GB of RAM.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the procedure for making the request?

Copy link
Contributor Author

@kittaakos kittaakos Aug 25, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It's still an ongoing conversation. Once we decide how to do it, I continue with the PR.

yarn --cwd ./electron/packager && yarn --cwd ./electron/packager package
```
- Artifacts:
- You have to upload the following artifacts from `./arduino-ide/electron/build/dist` to S3:
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What is the procedure for uploading things to S3?

- `arduino-ide_${VERSION}_Linux_64bit.AppImage`,
- `arduino-ide_${VERSION}_Linux_64bit.zip`, and
- `stable-linux.yml`

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add instructions to also replace the GitHub release assets with the artifacts.

node ./scripts/merge-channel-files.js ./path/to/folder/with/channel/files
```
- You have the merged channel file that you need to upload to S3.

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add instructions to also replace the GitHub release assets with the artifacts.

&& curl -sS https://dl.yarnpkg.com/debian/pubkey.gpg | sudo apt-key add - \
&& echo "deb https://dl.yarnpkg.com/debian/ stable main" | sudo tee /etc/apt/sources.list.d/yarn.list \
&& sudo apt update && sudo apt install --no-install-recommends yarn
```
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Add instructions for cloning the arduino/arduino-ide repository into the EC2 instance machine and checking out the release tag.

@kittaakos kittaakos marked this pull request as draft July 26, 2023 08:51
Co-authored-by: Akos Kitta <a.kitta@arduino.cc>
Co-authored-by: per1234 <accounts@perglass.com>
Signed-off-by: Akos Kitta <a.kitta@arduino.cc>
---

- Q: How to connect to the EC2 instance?
- 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.
Copy link
Contributor Author

@kittaakos kittaakos Aug 25, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The chmod 0400 username_ip.pem is missing from the steps. Otherwise there is an error:

Load key "username_ip.pem": bad permissions
username@ip: Permission denied (publickey).

&& codesign -dv --verbose=4 ~/Desktop/Arduino\ IDE.app \
&& ~/Desktop/Arduino\ IDE.app/Contents/MacOS/Arduino\ IDE
```

Copy link
Contributor Author

@kittaakos kittaakos Aug 29, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Should manually rename arm to ARM before the upload: #2117

...on of automated builds for macOS ARM
Previously, the production of the builds for the Apple Silicon host target was a manual procedure. This was done due to
the lack of availability of GitHub hosted runner machines of that architecture. Fortunately such runners are now
available, which allowed us to set up automated builds for this target.
For this reason, it is no longer necessary to maintain documentation of the manual release procedure for that target.
libx11-dev \
libxkbfile-dev \
build-essential \
libsecret-1-dev \
Copy link
Contributor Author

@kittaakos kittaakos Oct 13, 2023

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Copy link
Contributor Author

This PR is obsolete and has been resolved via #2245 and #2253. Thank you for your CI superpower, Per.

Closing as invalid.

per1234 reacted with hooray emoji

@kittaakos kittaakos added the conclusion: invalid Issue/PR not valid label Oct 13, 2023
@per1234 per1234 deleted the manual-release branch October 17, 2023 05:48
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Reviewers

@per1234 per1234 per1234 requested changes

+1 more reviewer

@Mickael0686 Mickael0686 Mickael0686 approved these changes

Reviewers whose approvals may not affect merge requirements

Labels

conclusion: invalid Issue/PR not valid topic: documentation Related to documentation for the project type: enhancement Proposed improvement

Projects

None yet

Milestone

No milestone

Development

Successfully merging this pull request may close these issues.

AltStyle によって変換されたページ (->オリジナル) /