Snap GitHub ci#5379
Conversation
|
Thanks for looking at it @tobiasdiez ... |
|
Yep, they updated to a later build and thus the paths changed. I tried to fix it with #5380 but that does not work at the moment. We have to wait a bit until some breaking changes to the jpackage interface are propagated trough the tool chain. |
|
So the build is fixed upstream. Could you please rebase/merge the latest changes. Thanks |
|
I had to merge because there were too many changes for a proper rebase, and it was not working properly.. |
|
There are some problems with the snap build. Moreover, I was wondering if it is really necessary to wrap everything in the docker. apt get install snap raft (maybe after add-apt-repository ppa:snappy-dev/tools) is not possible? |
|
Unfortunately it's not possible, being a core18 snap it needs to be built in a vm (multipass or lxc), and those do not work atm in a github actions vm. |
|
There are open issues related to having official support for either an official docker image or support directly in the github CI: |
|
@tobiasdiez The snap build works now, so it can be uploaded to the jabref repo. paste to the SNAPCRAFT_LOGIN_FILE in secrets |
|
Perfect! Thanks for your work. @koppor @Siedlerchr can you please have a look at the upload stuff (and maybe add the login data to the admin repo?). Thanks |
|
If you want we could first uncomment the upload to builds.jabred we could test the built snap from there before pushing to the snap store |
|
It's not possible right now to use secrets in pull requests from forked repositories (https://github.community/t5/GitHub-Actions/Make-secrets-available-to-builds-of-forks/m-p/30678#M508). Thus, we cannot upload something to builds.jabref.org from a forked PR. Thus, I'll merge this now and hope everything runs. |
|
Joining the party late. The snapcraft step is protected by a guard checking for the branch. This is an indicator that a separate "publish-on-snapcraft" workflow should be created. Running on ubuntu-latest and master branch only. Maybe just executing the single step is enough (after checkout). |
|
@tobiasdiez Let's see if it works, then it can be moved out in a separate part, to expedite the upload of the other builds |
|
It builds and uploads! |
|
Build was succesful! Congrats! @LyzardKing So the only missing part is the upload to the snapcraft? |
|
I agree it would be cleaner to extract the snap action to a separate workflow. However, it seems running workflows sequentially is not yet supported: https://github.community/t5/GitHub-Actions/Github-Actions-trigger-workflow-on-Succes-Failure-of-other/td-p/17944 |
|
@Siedlerchr The missing libraries error should actually be ignored because they are all in the gnome-extention snap. |
|
@LyzardKing Thanks for the update. Btw, I added you as collaborator, so you can directly create a new branch at the JabRef repo and can test it without needing to specify any secrets in your fork |
|
Thanks!! |
| SNAPCRAFT_LOGIN_FILE: ${{ secrets.SNAPCRAFT_LOGIN_FILE }} | ||
| run: | | ||
| docker run -v $(pwd):$(pwd) -t lyzardking/snapcraft-bionic sh -c "apt update -qq && cd $(pwd) && snapcraft && mv jabref*.snap build/distribution/" | ||
| # cd build/distribution/ && mdkir .snapcraft && echo ${SNAPCRAFT_LOGIN_FILE} | base64 --decode --ignore-garbage > .snapcraft/snapcraft.cfg && snapcraft push --release=beta *.snap |
There was a problem hiding this comment.
This part needs secrets and activations as proposed in #5379 (comment)
|
Why would we have the build running sequentially? The snap build+release
and the build+release to builds.jabref.org should happen in parallel? I
know that our could would be compiled twice. (We should accept bandwidth
waste on GitHub as long as they don't support caching as CircleCI does)
Tobias Diez <notifications@github.com> schrieb am Mo., 7. Okt. 2019, 16:47:
… I agree it would be cleaner to extract the snap action to a separate
workflow. However, it seems running workflows sequentially is not yet
supported:
https://github.community/t5/GitHub-Actions/Github-Actions-trigger-workflow-on-Succes-Failure-of-other/td-p/17944
—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
<#5379?email_source=notifications&email_token=AAKNU7S3PO45AW77WNEHS7DQNNDXBA5CNFSM4I4WIHN2YY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEAQTQ7Y#issuecomment-539048063>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AAKNU7TYIQ3CSOA3PKFA7JTQNNDXBANCNFSM4I4WIHNQ>
.
|
|
@koppor The snap build reuses the jpackage build |
|
Follow up discussions regarding the build at #5417. |
This is a sort of working pr of the github actions integration.
I commented out the upload part to test, but the jpackage download url gives a 404.
If you manage to get it to work, without activating the snap upload to the store it would be interesting to see if the snap is uploaded correctly to the jabref server, like the other builds..