-
Notifications
You must be signed in to change notification settings - Fork 4
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
Implement MySQL server ROCK with rockcraft #4
Conversation
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Nice, we need to move branch and change the name.
Let's use "charmed-" for fat OCI/snaps.
rockcraft.yaml
Outdated
@@ -0,0 +1,46 @@ | |||
name: charmed-mysql # the name of your ROCK | |||
base: ubuntu:22.04 # the base environment for this ROCK | |||
version: '0.8.22-1' # just for humans. Semantic versioning is recommended |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
The current Dockerfile in branch 8.0-22.04
uses version 0.8.23-1
,
however it is a version of package mysql-apt-config
while the version of charmed-snap should represent the main payload component version mysql-server
which has version 8.0.31-0ubuntu2
I would vote to use it here.
What do you think?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I agree with this. To be clear, do we would want to set the version to 8.0.31-0ubuntu2
or 8.0.31
as thats the actual payload version and the rest of it is packaging info?
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
BTW, maybe we should also remove Dockerfile as we are going to build and publish ROCK OCI now... to avoid confusion what to edit, etc.
rockcraft.yaml
Outdated
after: [mysql-repo] | ||
stage-packages: | ||
- mysql-shell | ||
- mysql-server-8.0 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
is there any way to version lock these packages? if i understand it correctly, we need the server, router and xtrabackup versions to be aligned for them to work correctly
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Not that I have found in any of the documentation or on the forums. I've even played with some of the syntax to see if I could get it to work.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Playing around with this more, I found a way to do it, but I don't believe it is going to be useful as repos don't typically have various versions available of each deb package.
Issue
The ROCK is created using
docker
and lacks CI.Solution
This PR migrates the tooling from
docker
torockcraft
and adds the supporting CI components for building and publishing. This also addresses privilege dropping for runningmysqld
as themysql
user.Context
MySQL Operation
Rockcraft
Github Actions
setpriv manpage
Testing
This is a draft and is untested :)
Release Notes