Skip to content
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

Adding alternative installation for Windows daily build from aka.ms/ros channel. #506

Merged
merged 12 commits into from
Sep 29, 2020

Conversation

seanyen
Copy link
Contributor

@seanyen seanyen commented Jan 27, 2020

Adding alternative installation for Windows daily build from aka.ms/ros channel.

Copy link
Member

@jacobperron jacobperron left a comment

Choose a reason for hiding this comment

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

This is nice. What versions of packages are being used, the release tags or eloquent branches?

source/Installation/Eloquent/Windows-Install-Binary.rst Outdated Show resolved Hide resolved
@jacobperron
Copy link
Member

@seanyen friendly ping. There is some feedback above that can be addressed.

@jacobperron
Copy link
Member

@seanyen Friendly ping.

@seanyen
Copy link
Contributor Author

seanyen commented Apr 17, 2020

@jacobperron Sorry I totally missed your previous ping. I will reiterate this soon.

@seanyen
Copy link
Contributor Author

seanyen commented May 4, 2020

@jacobperron This is ready for review and merge.

@seanyen
Copy link
Contributor Author

seanyen commented May 22, 2020

@jacobperron Following up.

@jacobperron jacobperron self-requested a review June 8, 2020 18:09
Copy link
Member

@jacobperron jacobperron left a comment

Choose a reason for hiding this comment

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

I tried to follow the instructions, but ran into some issues. Maybe you have an idea about what's going wrong?

source/Installation/Eloquent/Windows-Install-Binary.rst Outdated Show resolved Hide resolved
source/Installation/Eloquent/Windows-Install-Binary.rst Outdated Show resolved Hide resolved
source/Installation/Eloquent/Windows-Install-Binary.rst Outdated Show resolved Hide resolved
@jacobperron
Copy link
Member

@seanyen
I've brought this up with the ROS 2 team, and we have some questions before adding this new installation method to the documentation:

  1. What promise of maintenance do we have from your team?
    For example, what ROS distributions do you plan to support and how frequently will they be updated?
  2. Are these always going to be the latest development branches for a distribution, or could we also (or instead) have a release snapshot (e.g. current tagged versions of ROS repositories)?
  3. Is your toolchain open (or planned to be open) so that other users have the option to set up there own Windows build farm?

@seanyen seanyen marked this pull request as draft June 15, 2020 22:31
@seanyen
Copy link
Contributor Author

seanyen commented Jun 15, 2020

What promise of maintenance do we have from your team? For example, what ROS distributions do you plan to support and how frequently will they be updated?
Are these always going to be the latest development branches for a distribution, or could we also (or instead) have a release snapshot (e.g. current tagged versions of ROS repositories)?

Our team will be supporting the ROS 2 LTS distro (Dashing and later) for the Chocolatey package releases, which will be tested and validated by certain quality gates (for example, like release-to-release upgrade). For the non-LTS distro, we will enable the Chocolatey packages, but they will be at the best effort. Our team support will be primarily on the LTS distro.

For the nightly build, which will be published daily and will be equivalent to the snapshots from testing repository for the Debian packages channel (Currently it is still using the development branch from the upstream, but it should be flexible to change to the model more aligned to Open Robotics releases). For the verified build, which will be 2-month cadence given the team capacity, and the snapshot will be respecting to Open Robotics release snapshots. In other words, the public announced releases from Open Robotics will become release candidates for our pipelines for the 2-month release.

Is your toolchain open (or planned to be open) so that other users have the option to set up there own Windows build farm?

The build script is open source under https://github.com/ms-iot/ros-windows-build and the recipe is written for Azure Pipelines. Users can fork and replicate the same environment under an Azure DevOps account.

cc @dirk-thomas FYI, and hope you can shed some lights how to get the snapshots for the regular releases and testing repository. (Is it directly using rosinstall_generator to get tagged sources? And how to specify if I want a particular release?)

@dirk-thomas
Copy link
Member

For the nightly build, which will be published daily and will be equivalent to the snapshots from testing repository for the Debian packages channel.

Looking at an example pipeline of Eloquent (https://ros-win.visualstudio.com/ros-win/_build/results?buildId=7438&view=logs&j=c7f440d8-2ad8-5cef-5f6c-523fd9be0b31&t=d2d83722-0e0d-58fa-5bbd-592a2362994a) it looks like the build is using the Eloquent specific branch of the source repos. That would not be the same as what is available from Debian packages (which only contain released versions of all packages).

@ros-discourse
Copy link

This pull request has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2020-06-18/14948/1

@dirk-thomas
Copy link
Member

We discussed this in a recent meeting. We are hesitant to make the nightly state built from the development branches the recommended version for Windows users. Therefore we should first get choco packages in place which match the latest released versions of repositories / packages and then make those the recommended way. The nightly development builds will still be valuable but should only be used by a small subset of users which explicitly choose them.

@jacobperron
Copy link
Member

The nightly development builds will still be valuable but should only be used by a small subset of users which explicitly choose them.

Perhaps it makes sense to suggest the nightly development builds as an option on the pre-release testing page

@seanyen
Copy link
Contributor Author

seanyen commented Jun 30, 2020

We discussed this in a recent meeting. We are hesitant to make the nightly state built from the development branches the recommended version for Windows users. Therefore we should first get choco packages in place which match the latest released versions of repositories / packages and then make those the recommended way. The nightly development builds will still be valuable but should only be used by a small subset of users which explicitly choose them.

Perhaps it makes sense to suggest the nightly development builds as an option on the pre-release testing page

Thanks for the summary. For the release builds, I will be using with ros2.repos tag versions so the content will be aligned with OR releases.

And for the prerelease builds, it keeps the current state to be built from the development branch. And it makes sense to move the pre-release instructions to the pre-release testing page.

Once I make the adjustment to our build pipeline (I plan to do that in July), I will be pinging back on this thread. Thanks!

@dirk-thomas
Copy link
Member

Another note from the meeting: the plan is to get rid of the ros2.repos file in the near future and query the same information using the rosinstall_generator from the ros/rosdistro repository. It would be good to work towards that so when the ros2.repos file is being remove the pipeline is ready to continue.

@ros-discourse
Copy link

This pull request has been mentioned on ROS Discourse. There might be relevant details there:

https://discourse.ros.org/t/ros-2-tsc-meeting-minutes-2020-07-16/15468/1

@seanyen seanyen marked this pull request as ready for review August 14, 2020 17:36
@seanyen
Copy link
Contributor Author

seanyen commented Aug 14, 2020

@dirk-thomas @jacobperron Hi, I am happy to update now we started to produce the installations aligned with the release snapshots (for Foxy and Dashing). And I have updated this pull request accordingly. Hope we can move this forward soon.

Copy link
Member

@jacobperron jacobperron left a comment

Choose a reason for hiding this comment

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

Sorry for the long delay. I tried out the the updated instructions for Dashing and it works for me!

Thanks for iterating!

@jacobperron jacobperron merged commit 64b0039 into ros2:master Sep 29, 2020
@seanyen seanyen deleted the ros_windows branch September 29, 2020 22:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants