Add Snapcraft metadata and install/maintenance hooks
#666
Sammanfogat
RAOF
sammanfogade 5 incheckningar från add-snapcraft
in i master
5 år sedan
Granskare
Begär granskning
Inga granskare
Etiketter
Rensa etiketter
Related to the REST API
Code running on the server
Stuff related to Federation
Related to the front-end
Translations, and related code
More about project management or code than the project itself
The building, or installation process of Plume
Something isn't working
We need to talk
New feature or request
This is a new feature
Compatibility with different browsers, readers and OS
Related to an external package that Plume uses
UI/UX related issues and PRs
Good for newcomers
Extra attention is needed
Issues affecting only mobile UX
How elements're rendered out for the end user
Something else needs to be fixed first
This issue or pull request already exists
This PR is not complete yet
Issues concern a limited number of instances
This doesn't seem right
Need to be discussed by the community (on Loomio)
This PR is ready to be reviewed
Proposed ideas worth considering
This is issue has been created after a vote on Loomio
This will not be worked on
Tillämpa etiketter
A: API
Related to the REST API
A: Backend
Code running on the server
A: Federation
Stuff related to Federation
A: Front-End
Related to the front-end
A: I18N
Translations, and related code
A: Meta
More about project management or code than the project itself
A: Security
Build
The building, or installation process of Plume
C: Bug
Something isn't working
C: Discussion
We need to talk
C: Enhancement
New feature or request
C: Feature
This is a new feature
Compatibility
Compatibility with different browsers, readers and OS
Dependency
Related to an external package that Plume uses
Design
UI/UX related issues and PRs
Documentation
Good first issue
Good for newcomers
Help welcome
Extra attention is needed
Mobile
Issues affecting only mobile UX
Rendering
How elements're rendered out for the end user
S: Blocked
Something else needs to be fixed first
S: Duplicate
This issue or pull request already exists
S: Incomplete
This PR is not complete yet
S: Instance specific
Issues concern a limited number of instances
S: Invalid
This doesn't seem right
S: Needs Voting/Discussion
Need to be discussed by the community (on Loomio)
S: Ready for review
This PR is ready to be reviewed
Suggestion
Proposed ideas worth considering
S: Voted on Loomio
This is issue has been created after a vote on Loomio
S: Wontfix
This will not be worked on
Ingen Etikett
A: API
A: Backend
A: Federation
A: Front-End
A: I18N
A: Meta
A: Security
Build
C: Bug
C: Discussion
C: Enhancement
C: Feature
Compatibility
Dependency
Design
Documentation
Good first issue
Help welcome
Mobile
Rendering
S: Blocked
S: Duplicate
S: Incomplete
S: Instance specific
S: Invalid
S: Needs Voting/Discussion
S: Ready for review
Suggestion
S: Voted on Loomio
S: Wontfix
Milsten
Ange milstolpe
Rensa milstenar
Inga objekt
Ingen Milsten
Tilldelade
Tilldela användare
Rensa tilldelade
Ingen tilldelad
1 Deltagare
Notiser
Förfallodatum
Förfallodatumet är ogiltigt eller utanför gränserna. Använd formatet 'åååå-mm-dd'.
Inget förfallodatum satt.
Beroenden
No dependencies set.
Reference: Plume/Plume#666
Referens i nytt ärende
Det finns inget innehåll än.
Ta bort branch 'add-snapcraft'
Borttagning utav en branch är permanent. Detta KAN INTE ångras. Vill du fortsätta?
Nej
Ja
This is somewhat of a proof of concept; it currently:
BASE_URL
, addresses, and such throughsnap set plume base-url="blog.cooperteam.net"
ROCKET_SECRET
at install time, andEverything works, modulo the media upload directory not being configurable, and the base directory being read-only…
Codecov Report
Codecov Report
Codecov Report
Codecov Report
To test this you need to build the snap by running
snapcraft
in a checkout; this should makeplume_0.3.0_amd64.snap
(or whatever, as appropriate for your architecture). This can be installed withsudo snap install --dangerous plume_0.3.0_amd64.snap
.Minimal setup is then something like:
(only sqlite is actually supported at the moment).
While the snap will run migrations on updates, you still need to manually do the initial migration, with something like:
sudo plume.plm migrate --path=/var/snap/plume/current
why is the installation
--dangerous
?Because it's a local file (and you haven't pre-acknowledged its nonexistent signature), so it hasn't had any of the normal automated review. Once uploaded to the snap store that
--dangerous
will go away.(This is standard for installing locally-built snaps)
❓
why is this commented out?
what do we need / usr diesel-cli for?
Because I forgot to remove it, apparently!
The compile plume instructions say to install diesel_cli. Is that not necessary?
It would be good to fix this up so that the server doesn't try to start until setup the been completed. This was a manual attempt at doing that, but didn't quite work.
i don't think it's necessary.
@fdb-hiroshima?
It is for the 0.3.0 tag, but not for master (we have
plm migration run
now).Here is what I get when I run
snapcraft
:(the french part are messages from git, nothing important)
I have snapcraft 2.43.1 and snap 2013-11-29-8, which seems quite old, maybe that is the issue?
Could this file go in the
snap
directory too, or not?Maybe you are already aware of that, but just to have reminder: this description should probably be updated.
I think it can go in
snap/local
. I'll give it a try.Done! Plume now doesn't try to run until it's been enabled, and doesn't let you enable it until you've set the minimum configuration items.
It can. Done!
Removed
Updated. Please give the verbiage a once-over!
This is now updated (sorry about leaving it hanging here). It definitely builds with snapcraft 3.8, 'cause that's what I've been using 😁
You now need to set all the configuration options (eg:
sudo snap set plume base-url=cooperteam.net db.type=sqlite
) and then enable Plume (sudo snap set plume enabled=true
). This will run the initial migrations, and so will be all ready to be configured withplume.plm ...
.👍
Granskare
b5eecbf2e7
.Step 1:
From your project repository, check out a new branch and test the changes.Step 2:
Merge the changes and update on Forgejo.