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

Build: spin only one Docker container for whole build process #8935

Open
humitos opened this issue Feb 17, 2022 · 3 comments
Open

Build: spin only one Docker container for whole build process #8935

humitos opened this issue Feb 17, 2022 · 3 comments
Labels
Needed: design decision A core team decision is required

Comments

@humitos
Copy link
Member

humitos commented Feb 17, 2022

Currently, we are spinning up 2 Docker containers:

  1. use readthedocs/build:ubuntu-20.04 to run setup VCS process
  2. read .readthedocs.yaml's build.image or build.os key to decide what Docker container image spin depending on user's configuration to build the docs

It would be good if we can reduce the complexity and resource usage to spin up just one image for the whole process. However, we need to find a way to get the config file without cloning the repository so we can spin up initially the image the user has selected in the config file for the build process.

I thought we could use GitHub's API to retrieve the content of the .readthedocs.yaml, but we would need a similar implementation for other VCS providers as well. I'm not sure what's the best solution here, but it would be good to brainstorm some ideas and check how other CIs do this.

@humitos humitos added the Needed: design decision A core team decision is required label Feb 17, 2022
@stsewd
Copy link
Member

stsewd commented Feb 17, 2022

We also need to do 4 calls to check if file exists (to check all valid names of the config file).

but we would need a similar implementation for other VCS providers as well

And for people that doesn't use a supported provider (github/gitlab/bitbucket).

But we can try a mix, use one method for the supported providers, and use the old method for the others.

@humitos
Copy link
Member Author

humitos commented Mar 7, 2022

Another problem related to using two different Docker images in the build process: #8995

@humitos
Copy link
Member Author

humitos commented Jul 24, 2023

We are going to use the same Docker image now #10555. We can probably keep this pattern from now on each time a new Ubuntu LTS is released.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Needed: design decision A core team decision is required
Projects
None yet
Development

No branches or pull requests

2 participants