-
Notifications
You must be signed in to change notification settings - Fork 2.8k
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
CI and release scheme #450
Comments
@1138-4eb I dropped Travis because it was a lot slower than Circle and in that time it was easier to get the different phases on Circle: But I see now Travis is moving to GitHub Apps. We could try what you suggest and if it works, go for it. But we have to be careful about Caddy build server. |
I expected that. Indeed, CircleCI should still be much faster than Travis, because the latter needs to spin up a "virtual machine" for each stage and then run docker on top of it, while CircleCI is designed to run docker images directly. However, I think that Travis is offering a better solution from the integration point of view:
BTW, I am setting goreleaser to build docker images with it: https://goreleaser.com/customization/#Docker It seems that, in the very near future, we will be able to create multiarch images: goreleaser/goreleaser#530 So we might close #440 with #399. Anyway, should anyone know how to integrate everything in a CircleCI config which is equivalent to the |
It sounds good to me. Thanks for all your work here 😃 It's being amazing! |
@hacdias just a quick update to let you know that this is almost ready. The only missing part is the Caddy build server issue. I registered, but there is so little info about the build process. So merging #399 will have to wait until we can find a solution. |
A single master branch is used.
When regular commits are pushed to GitHub:
latest
and, if successful, publish it.When tagged commits are pushed to GitHub:
See:
However, it seems that travis-ci.org was used until five months ago: https://travis-ci.org/filebrowser/filebrowser/builds @hacdias, why did you stop using travis-ci as a CI service?
The current approach has the following (minor) caveats:
rice-box.go
with the artifacts.Moreover, the current proposal in #399:
So, the build task in CircleCI and the build task in hub.docker.com will be duplicated.
Since all of the steps can be executed in travis-ci.com, I propose to add missing features to #399, and drop CircleCI and hub.docker.com as CI services. These missing features are:
filebrowser/dev
.gosec
with excluded options (those related to using MD5). See drop package.json, use yarn instad of npm, add build_in_docker.sh #399 (comment).filebrowser/dev
.filebrowser/filebrowser:develop
.filebrowser/filebrowser:<tag>
andfilebrowser/filebrowser:latest
.publish.sh
to tag both the backend repo and the frontend repo.Alternatively, it seems that CircleCI allows to reproduce the builds locally (https://circleci.com/docs/2.0/local-cli/). Therefore, if anyone has enough knowledge to implement an equivalent workflow in CircleCI only, that would be equally acceptable.
The text was updated successfully, but these errors were encountered: