Comments (7)
@jnsgruk , the example above leverages
whywaita/setup-lxd@v1
, is there a difference from the canonical provided one?
Yeh, it just doesn't do the iptables stuff - the Ubuntu Github Actions runners that use 22.04 have a conflict where the rules that ship with docker prevent LXD containers from accessing the internet by default -- the Canonical action includes the change to iptables to ensure both work :)
from rockcraft.
I tested this with ubuntu 20.04 and I do not get this error. The error is somewhat related to the ubuntu 22.04 image / runner.
from rockcraft.
Pretty sure this is an iptables clash on 22.04
If you use the canonical/setup-lxd
action before you install rockcraft you likely won't have the same issue.
Or you can lift the iptables rules from here: https://github.com/canonical/setup-lxd/blob/90d76101915da56a42a562ba766b1a77019242fd/action.yml#L39
from rockcraft.
@jnsgruk , the example above leverages whywaita/setup-lxd@v1
, is there a difference from the canonical provided one?
from rockcraft.
Ahhh ok that's good to know. Cheers!
from rockcraft.
The fact that rockcraft depends on both docker and lxc being installed and that both those things don't play well together on Ubuntu is a bit of a pain. I'm not sure if this comment is helpful, but I'm sure I'm not the first feeling this pain.
from rockcraft.
this is a pain indeed. The thing is that Rockcraft doesn't actually depend on Docker, but most people do have it installed and is the de-facto tool for testing containers. In any case, here are some (hopefully) helpful nuggets:
Docker compatibility
I think the iptables clash might disappear if you use the Docker snap instead of the DEB.
LXD setup and automation
As Jon mentioned, the LXD action already takes care of this clash, as well as the new rockcraft-pack
action: https://github.com/canonical/craft-actions/#rockcraft-pack
from rockcraft.
Related Issues (20)
- Remove references to "edge" from the docs
- Remove the "Rockcraft Parts" page
- Integrate with Starbase
- Show link to full execution logs when `rockcraft pack --debug` enters debug session HOT 3
- clarify the impact of the global rockcraft.yaml fields in the final ROCK
- add the typical environment variables to any interactive session, like with `--debug`
- Error message for invalid versions is misleading
- Document how primed files become an OCI layer
- improve the speed rockcraft's iterative design experience
- isolate parts of a rockcraft build process from each other
- Integrate plugin docs from craft-parts
- Dedicated plugin for `deb-security-manifest` HOT 5
- Consider creating and making the _daemon_ user available before running any steps
- Add support for pinning the build and build-base images
- `run-user` does not work properly without `services` HOT 1
- rock with `entrypoint-service` does not work if executed without any `args` HOT 7
- Summarise what has/has not been completed when failing or entering a `--debug` session HOT 1
- overlay-packages is not documented in rockcraft.yaml reference HOT 1
- Upgrade skopeo version for docker engine API version HOT 4
- Add support for `org.opencontainers.image.revision` annotation HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rockcraft.