Build.snapcraft.io for private projects

I want to add automatic snap builds to a private github project, how can I achieve that with current infrastructure ?

This is now more important than a few months ago. Could we get a (loose) timeline on when that will be done ?

build.snapcraft.io is essentially just a different frontend for launchpad … you should be able to set up your automation in LP too … it’s just more webUI clicking required there …

@ogra I am kind of following @cjwatson’s video https://www.youtube.com/watch?v=fjZx2otW2c4 but not sure if there is a way to support private github repositories with launchpad, or am I missing something ?

Launchpad doesn’t support private repositories yet, although we’re working on that at the moment. (Private repositories on Launchpad though, not on GitHub.)

As far as I know there are no current plans to have build.snapcraft.io support private repositories on GitHub.

Ping, friendly inquiry, if there is an update for this feature.

We want to publish our commercial software, for armhf, arm64 and amd64 and don’t really have the infrastructure to build armhf/arm64 packages.

@om26er Check out https://ograblog.wordpress.com/2020/06/03/your-own-in-house-snap-factory/ from @ogra

1 Like

I think that requires ARM hardware to build for armhf, which I dont have :wink:

Luckily a RPi4 8GB is cheap these days. https://www.raspberrypi.org/products/raspberry-pi-4-model-b/?variant=raspberry-pi-4-model-b-8gb

Otherwise ping @lool and I bet he can set you up with a commercial engagement for something to do this, he helped my last company do that.

This works great for private snaps.

GH Actions won’t automatically solve the ARM build problem though, since Github only provides amd64 builders. You’re basically left with two options:

  1. set up and manage a self hosted runner on your own ARM hardware, and reference it in your workflow.
  2. work out how to cross compile your software, which is what rustup folks have done.
1 Like

set up and manage a self hosted runner on your own ARM hardware, and reference it in your workflow.

In documentation it states that “Self-hosted runners can be physical, virtual, in a container, on-premises, or in a cloud” so ARM based cloud instances are also an option.

Sure, but it is something you will have to provide and manage yourself. A lot of the appeal of the Launchpad builders and Github Actions is that it is infrastructure someone else manages.

I agree. But he said they don’t have ARM hardware so unless they wanna cross compile it might be their only option.