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

add how to build the doc with devcontainer. #4757

Merged
merged 3 commits into from
Oct 8, 2024

Conversation

fujitatomoya
Copy link
Collaborator

closes #4497

@@ -5,7 +5,7 @@
},
"workspaceMount": "source=${localWorkspaceFolder},target=/tmp/doc_repository,type=bind",
"workspaceFolder": "/tmp/doc_repository",
"postCreateCommand": "pip3 install --no-warn-script-location --user -r requirements.txt -c constraints.txt",
"postCreateCommand": "pip3 install --no-warn-script-location --user -r requirements.txt -c constraints.txt --break-system-packages",
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

this is required for ubuntu 24.04 or later, see more details for https://peps.python.org/pep-0668/

and that should be no problem, since this option is applied in the container environment only.

Copy link
Contributor

Choose a reason for hiding this comment

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

Hm, I'm a bit confused about why this is needed here.

The current Dockerfile uses Ubuntu 22.04:

. And there, this flag will not work; the version of setuptools in Ubuntu 22.04 doesn't understand this flag. Are we somehow getting a newer version of setuptools here?

Copy link
Collaborator Author

Choose a reason for hiding this comment

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

the version of setuptools in Ubuntu 22.04 doesn't understand this flag

This PR also changes the Dockerfile to use ubuntu:24.04? or did you mean something else?? btw, i verified that this works with no problem.

Copy link
Contributor

Choose a reason for hiding this comment

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

This PR also changes the Dockerfile to use ubuntu:24.04?

No, sorry, I just looked too quickly.

One thing we have to be careful about with changing the Dockerfile is that the Dockerfile is used to build and deploy the documentation. So as soon as we merge this, we'll start using 24.04 for the deployment. That is the correct thing going forward, but I'm going to hold off on merging this until I can merge it and immediately run a doc deployment job.

Copy link

github-actions bot commented Sep 20, 2024

HTML artifacts: https://github.com/ros2/ros2_documentation/actions/runs/10986104386/artifacts/1964121223.

To view the resulting site:

  1. Click on the above link to download the artifacts archive
  2. Extract it
  3. Open html-artifacts-4757/index.html in your favorite browser

@clalancette clalancette added the backport-all backport at reviewers discretion; from rolling to all versions label Sep 22, 2024
README.md Outdated Show resolved Hide resolved
docker/image/Dockerfile Outdated Show resolved Hide resolved
.. code-block:: console

pip3 install --user --upgrade -r requirements.txt
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

this command fails with venv,

(ros2doc) root@tomoyafujita:~/ros2_ws/work/ros2_documentation# pip3 install --user --upgrade -r requirements.txt
ERROR: Can not perform a '--user' install. User site-packages are not visible in this virtualenv.


.. group-tab:: macOS

.. code-block:: console

pip3 install --user --upgrade -r requirements.txt
pip install -r requirements.txt -c constraints.txt
Copy link
Collaborator Author

Choose a reason for hiding this comment

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

I am almost sure this works, but i do not have the dev environment with macOS and Windows, so i would like someone to help to make sure.

Copy link
Collaborator Author

@fujitatomoya fujitatomoya left a comment

Choose a reason for hiding this comment

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

@clalancette i tried to address all comments, can you take a look at this again?

@fujitatomoya
Copy link
Collaborator Author

@clalancette friendly ping.

Copy link
Contributor

@clalancette clalancette left a comment

Choose a reason for hiding this comment

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

This looks good to me. I'm going to go ahead and merge this, and then immediately run https://build.ros.org/job/doc_ros2doc/ . If that fails, I'll have to go ahead and revert it.

@clalancette
Copy link
Contributor

(also, I won't merge the backport PRs until that job completes successfully)

@clalancette clalancette merged commit fcf9bc5 into rolling Oct 8, 2024
4 checks passed
@clalancette clalancette deleted the fujitatomoya/add-doc-devcontainer-support branch October 8, 2024 18:18
mergify bot pushed a commit that referenced this pull request Oct 8, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)
mergify bot pushed a commit that referenced this pull request Oct 8, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)

# Conflicts:
#	.devcontainer/devcontainer.json
#	source/The-ROS2-Project/Contributing/Contributing-To-ROS-2-Documentation.rst
mergify bot pushed a commit that referenced this pull request Oct 8, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)

# Conflicts:
#	.devcontainer/devcontainer.json
#	source/The-ROS2-Project/Contributing/Contributing-To-ROS-2-Documentation.rst
@clalancette
Copy link
Contributor

Looks successful! https://build.ros.org/job/doc_ros2doc/1479/

clalancette pushed a commit that referenced this pull request Oct 8, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)

Co-authored-by: Tomoya Fujita <[email protected]>
clalancette pushed a commit that referenced this pull request Oct 15, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)
clalancette pushed a commit that referenced this pull request Oct 15, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)

Co-authored-by: Tomoya Fujita <[email protected]>
clalancette pushed a commit that referenced this pull request Oct 15, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)
clalancette pushed a commit that referenced this pull request Oct 15, 2024
* add how to build the doc with devcontainer.

* use venv instead of virtualenv.

* add venv to the official doc build procedure.

Signed-off-by: Tomoya Fujita <[email protected]>
(cherry picked from commit fcf9bc5)

Co-authored-by: Tomoya Fujita <[email protected]>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport-all backport at reviewers discretion; from rolling to all versions
Projects
None yet
Development

Successfully merging this pull request may close these issues.

pip install fails with error: externally-managed-environment
2 participants