Comments (5)
I chose the existing semantics intentionally because I found when I was using rpm-ostree compose tree
a lot locally I'd end up passing --cache-only
a lot by hand. Not entirely opposed to changing but...I like what we have now too.
How about coreos-assembler fetch -b
, which would work exactly like how rpmdistro-gitoverlay fetch -b
does: do a fetch, and if something changed, do a build.
(Though in the c-a case "something changed" does includes the images, so it'd probably be easier to just have fetch -b
just run a build afterwards regardless)
from coreos-assembler.
Not entirely opposed to changing but...I like what we have now too.
yeah. i actually am not advocating for changing it right now. I think there are a lot of "paper cut" type things that we can address with a re-write/design exercise. This is mostly food for thought for when that happens.
from coreos-assembler.
Proposal:
Break the build process into as many small pieces as possible. For example init
would be broken into getting the config and downloading anaconda. build
would be broken into composing the ostree, building the disk image, and running gf-oemid
. Each of these stages would have their own build script (or program) as well. Each stage would be responsible for knowing its inputs (including itself), knowing what other stage(s) generate those inputs, and caching its results. If you run gf-oemid
without initializing it would call diskimage
, which would run get-anaconda
and ostree
which would call init
.
The hard part would be figuring out how to plumb various options to the stages. I.e. how do you pass an argument to init
when you called gf-oemid
.
This of course, is reinventing make
, so it might be possible to actually just use make in conjunction with our scripts.
from coreos-assembler.
This of course, is reinventing make, so it might be possible to actually just use make in conjunction with our scripts.
May be interesting to look at https://github.com/apenwarr/redo
(this bit of the docs was making the rounds on social media recently; it has some inaccuracies but is still interesting)
from coreos-assembler.
stale.. closing
from coreos-assembler.
Related Issues (20)
- Create disk failed due to incorrect option format on Fedora 39 HOT 1
- build-arch jobs failing with "Error: unmarshalling error into &errorhandling.ErrorModel"
- cosa build error: "cli: stat /var/tmp/mantle-qemu771203327/swtpm-sock: no such file or directory" HOT 4
- [RFE] kola should support to start previous build to do external tests HOT 4
- OSBuild without compression yields GRUB failures HOT 25
- what is the difference between dasd and metal4k on s390x? HOT 9
- Kola Custom Test HOT 10
- `buildextend-virtualbox` and `buildextend-vmware` improperly handle raw disks >=8GB HOT 6
- `kola testiso` tests should check for badness in console/journal output HOT 5
- rework iscsi tests architecture HOT 2
- osbuild should use a buildroot that matches the target system HOT 6
- kola qemuexec fails on PXE with `uefi-secure` qemu-firmware HOT 2
- cosa run should't expect an image when `--netboot` is present
- 4K UEFI PXE tests failing HOT 2
- Docs: Using the provided alias with `COREOS_ASSEMBLER_CONFIG_GIT` leave FS with dangling files HOT 2
- Check that there is console output / a login prompt to make sure getty works HOT 2
- Fail test on SELinux denials and export audit.log if any found
- Figure out a way to share code with https://github.com/flatcar/mantle HOT 1
- Test `rhcos.upgrade.from-ocp-rhcos` fails with downgraded version of skopeo
- rpm-ostree in supermin VM leaks rofiles-fuse mounts; prevents clean cache unmount HOT 2
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 coreos-assembler.