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

Speed Up our Docker Travis CI builds #714

Open
eldadfux opened this issue Oct 27, 2020 · 18 comments
Open

Speed Up our Docker Travis CI builds #714

eldadfux opened this issue Oct 27, 2020 · 18 comments

Comments

@eldadfux
Copy link
Member

@eldadfux eldadfux commented Oct 27, 2020

We want to use caching to speed up Appwrite's Travis CI build process, and we can use the community help here.

Currently our build process time is around ~10 minutes which is OK, but as faster it can be less time maintainers needs to wait for confirmation that there changes are running as expected.

This change should be focused on our Travis CI YAML file. Any suggestions for improving the code base should be handled on an independent issue.

@SoftCreatR
Copy link
Member

@SoftCreatR SoftCreatR commented Oct 27, 2020

  1. Step: Get rid of Travis and use GitHub Actions ;)
  2. Step: Check this out: https://github.com/whoan/docker-build-with-cache-action
@enggal64
Copy link

@enggal64 enggal64 commented Oct 30, 2020

I

@Sj1218305
Copy link

@Sj1218305 Sj1218305 commented Nov 19, 2020

I want to claim this issue.
@eldadfux , is it still open?

@eldadfux
Copy link
Member Author

@eldadfux eldadfux commented Nov 19, 2020

@Sj1218305 Yes it is, please reach out on Discord to share your plan of action on this issue.

@eldadfux
Copy link
Member Author

@eldadfux eldadfux commented Nov 24, 2020

@Sj1218305 please work against branch 0.7.x which is where the upcoming Appwrite version located

@Glide7
Copy link
Contributor

@Glide7 Glide7 commented Dec 1, 2020

Hey @Sj1218305 :)
Are you still working on this issue? Do you perhaps need help from the team?

@Sj1218305
Copy link

@Sj1218305 Sj1218305 commented Dec 1, 2020

@Glide7 , I am working on this. Actually , I am new to Docker so I need some more time. I will surely reach out if any kind of help is required.

@Glide7
Copy link
Contributor

@Glide7 Glide7 commented Dec 1, 2020

Awesome, thanks for the update!

@Glide7
Copy link
Contributor

@Glide7 Glide7 commented Dec 1, 2020

@Sj1218305 also, feel free to join the #mainteners channel on our discord! https://appwrite.io/discord

@Glide7 Glide7 added the dwoc label Dec 15, 2020
@Glide7
Copy link
Contributor

@Glide7 Glide7 commented Dec 29, 2020

Hey @Sj1218305 - how are things going? Do you need assistance from us?

@kodumbeats kodumbeats mentioned this issue Jan 2, 2021
5 of 5 tasks complete
@hack3r-0m
Copy link
Contributor

@hack3r-0m hack3r-0m commented Jan 12, 2021

hi, I would like to take it.
@SoftCreatR suggested I will use this approach https://github.com/marketplace/actions/build-docker-images-using-cache#from-a-compose-file. I am thinking of creating a new branch from 0.7.x and make PR to that so it does not disturb the current development flow. I have a few doubts:

  • if I am not wrong, there is no image of 0.7.x on the docker hub
  • in the compose_file: docker-compose.yml line, is the path to docker-compose.yml relative considering .github/workflows working dir?
  • that action has some info regarding testing, is it for that particular repo, or is it relevant in this case?
@Sj1218305 Sj1218305 removed their assignment Jan 13, 2021
@eldadfux
Copy link
Member Author

@eldadfux eldadfux commented Jan 13, 2021

@hack3r-0m moving to Github actions is not part of this issue scope. The team is currently using Travis CI for ~60 repos and we need to have a wider plan for this kind of migration, which unfortunately is not a priority right now.

@hack3r-0m
Copy link
Contributor

@hack3r-0m hack3r-0m commented Jan 13, 2021

@eldadfux once 0.7.x is ready and pushed to docker, let say new PRs get merged into 0.7.x branch then how is old image updated on docker hub, there must be something step in .travis.yml file to merge new code into existing Docker image? As far as caching Travis CI, docs recommend not to cache images, so the only thing to cache is docker-compose up -d(containers)? btw, is there a need to install docker explicitly in travis build as language: minimal comes with the latest docker version(source)?

@eldadfux
Copy link
Member Author

@eldadfux eldadfux commented Feb 5, 2021

@hack3r-0m sorry for the late reply. Not sure about the Docker part, can you verify its already installed in language: minimal?

@hack3r-0m
Copy link
Contributor

@hack3r-0m hack3r-0m commented Feb 7, 2021

@eldadfux language has been changed to language: shell (as per docs, it is same as minimal and has docker. source) recently and also deploy.sh has been added in 0.7.x, is this issue still relevant?

@eldadfux
Copy link
Member Author

@eldadfux eldadfux commented Feb 7, 2021

@hack3r-0m yes, mind submitting a PR removing Docker so we can make sure tests are still green?

@hack3r-0m
Copy link
Contributor

@hack3r-0m hack3r-0m commented Feb 7, 2021

sure, i will try to do it ASAP

@hack3r-0m
Copy link
Contributor

@hack3r-0m hack3r-0m commented Feb 8, 2021

@eldadfux buildx (19.03.8)not supported with default docker version which comes pre-installed, while their docs say it is available on 19.03+

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
Linked pull requests

Successfully merging a pull request may close this issue.

None yet
6 participants