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 GitHub Workflow for building Sengi #356

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

Conversation

joschi
Copy link

@joschi joschi commented Feb 21, 2021

This pull request adds a GitHub workflow for building the Sengi web application, deploy it to https://sengiapp.github.io/ (GitHub Pages), and in case it was triggered by a new tag, it will create a draft release for this tag and attach a ZIP archive of the Sengi web application built from the tagged commit.

I took the liberty to create the SengiApp organization on GitHub in order to test the automatic deployment via the GitHub workflow. I've invited @NicolasConstant as an owner to the organization and will leave it afterwards.

Example workflow run for a regular commit (with automatic deployment):
https://github.com/joschi/sengi/actions/runs/587208773
Workflow example with commit to master

Example workflow run for a tag (with automatic upload of the Sengi web application to the draft release):
https://github.com/joschi/sengi/actions/runs/587209190
Workflow example with new tag

Example draft release created by the workflow:
Example Sengi 1.0.4-alpha.1 release draft

Closes #353

@NicolasConstant
Copy link
Owner

Thanks, it's a really interesting illustration but unfortunately I don't plan to add new CICD pipelines to the currents ones (I already have Travis and AppVeyor set-up and if I would put my hands in CICD it would be to reduce them to a single one and not adding more to the stack).

AppVeyor is the legacy one and I had to add Travis because at that time they were the only one to provide MacOS (for MacOS builds), now that AppVeyor is also supporting MacOS we could look to migrate all of CICD pipelines to one of them.

@joschi
Copy link
Author

joschi commented Feb 23, 2021

AppVeyor is the legacy one and I had to add Travis because at that time they were the only one to provide MacOS (for MacOS builds), now that AppVeyor is also supporting MacOS we could look to migrate all of CICD pipelines to one of them.

GitHub Actions supports Linux (via Ubuntu), macOS, and Windows too.

If you think it's worth a shot, I can try coming up with a proof of concept for using GitHub Actions to build the Electron distributions of Sengi.

@NicolasConstant
Copy link
Owner

GitHub Actions supports Linux (via Ubuntu), macOS, and Windows too.

Oh I wasn't aware it was already supporting it.

Currently we have this CICD strategy:

  • AppVeyor builds the web version and publish it on a remote web server via FTP (we can't change this for a Github page or anything else since current clients rely on it)
  • Travis builds the electron builds (Win, MacOS, Linux)

Since I will not change the hosting of the official instance to prevent breaking things, the only advantage to migrate all those pipelines to a Github one would be to fix #353, that could also be achieved by looking to perform this action with either Travis or AppVeyor.

Maybe it would take less time to enhance existing CICD pipelines, but if you manage to have all those constraints in Github Actions I will have a serious look at it and will consider to replace current CICD pipelines by it.

@joschi joschi force-pushed the github-workflow branch 2 times, most recently from b80fd13 to dd875c1 Compare November 1, 2022 21:23
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.

Publish versioned web application artifacts
2 participants