-
-
Notifications
You must be signed in to change notification settings - Fork 11
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 convenient packaging infrastructure #4
Conversation
4ec3f8b
to
dc98ebd
Compare
d1dba9e
to
aa9558f
Compare
AboutThe packaging process is completely automated based on Docker and
Details
UsageRead more about its usage within Packaging README. Demohttps://github.com/daq-tools/owntracks-publisher/releases BacklogThere are some more things to polish. We are tracking them at #5. |
@amotl thank you for this contribution. The changes to the Makefile mean that it no longer builds on non-gmake systems, so I won't take it as it stands; the packaging bits will have to be detached from the Makefile, probably best into their own independent |
In order to bring this program to a wider audience, this adds a lightweight but convenient packaging infrastructure. Read more about its usage within packaging/README.rst.
Dear @jpmens, I changed the packaging to work from within the With kind regards, |
Merged, thank you |
I see that you have been using
So, I recognize this is actually nothing new to your toolbox. However, the Docker integration now makes it possible to build that jazz without even having the respective Linux distribution installed on a real machine. |
@amotl I didn't know that, thanks. |
Just try to invoke these commands [1] on your workstation. They should work out of the box. If not, please let me know. [1] https://github.com/owntracks/ocli/blob/master/packaging/README.rst |
Be warned: I have no idea what's going on: $ docker login
Username: jpmens
Password: xx
Login Succeeded
$ make debian-package arch=amd64 dist=buster version=0.7.0
/Applications/Xcode.app/Contents/Developer/usr/bin/make deb-build name=owntracks-publisher
Building package owntracks-publisher version 0.7.0 for architecture amd64 and distribution buster.
docker build --tag owntracks/owntracks-publisher-build-buster-amd64:0.7.0 --build-arg BASE_IMAGE=owntracks/baseline-buster-amd64:latest --build-arg DISTRIBUTION=buster --build-arg VERSION=0.7.0 --build-arg NAME=owntracks-publisher --file dockerfiles/Dockerfile.builder ..
Sending build context to Docker daemon 5.353MB
Step 1/20 : ARG BASE_IMAGE
Step 2/20 : FROM ${BASE_IMAGE} AS build-environment
pull access denied for owntracks/baseline-buster-amd64, repository does not exist or may require 'docker login'
make[1]: *** [deb-build] Error 1
make: *** [debian-package] Error 2 |
@jpmens Please run the step for preparing the baseline images [1] on your local workstation. [1] https://github.com/owntracks/ocli/blob/master/packaging/README.rst#setup |
Wer lesen kann ist klar im Vorteil ... |
Who's GITHUB_TOKEN ist that? ( |
I assume I export mine. |
It's a completely random one. You might want to use your own token which has access to [1] https://github.com/daq-tools/owntracks-publisher/releases/tag/0.7.0 |
You might want to bump that to |
I'm not that thick ;-) |
@amotl you realize what you've caused, don't you? I've smelled blood, and I now want that magical Makefile all over the show, and can we add CentOS? :-) |
Building for CentOSWill that work in general?
I actually have been able to satisfy these dependencies and make it build already.
OutcomeWhile building for CentOS 6 didn't invoke at all (can't remember the reason), It croaked for me later in the packaging process for both the PreviewBuild baseline image
Invoke packaging
I will add general packaging support for CentOS right away. However, it still has the problems outlined within this post. |
No hurry, no rush. Thank you. :) |
When you're done I will rename the package to
to make it homogenous with the repo name. |
Maybe it was because the parameters of the [1] https://github.com/owntracks/ocli/blob/0.8.0/packaging/builder/fpm-package |
Introduction
By making a start to #3 in order to bring this program to a wider audience, this adds a lightweight but convenient packaging infrastructure.
Goals
History
The package building subsystem was originally conceived for Kotori the other day.
ocli
now has the pleasure of profiting from a trimmed and generalized version of it.Outlook
During cherry-picking the gems over from the Kotori repository, I tried to make most spots as generic as possible, so that it can be extended to other operating systems and architectures. Also, @jpmens and @ckrey might want to reuse it 1:1 for qtripp and friends as it works almost plug & play now.