nebraska icon indicating copy to clipboard operation
nebraska copied to clipboard

[RFE] store package in nebraska

Open guilhem opened this issue 2 years ago • 2 comments

Current situation

package must be a link

Impact

  • Not usable when object storage is not available.
  • Many steps

Ideal future situation

Add ability to upload a package.

**Implementation options

Stored locally for small instance or in a S3 bucket.

guilhem avatar Oct 20 '21 00:10 guilhem

@guilhem , we are working on a branch called https://github.com/kinvolk/nebraska/tree/proof-of-concept and that has an extension to the omaha protocol for supporting metadata in packages. That metadata can be anything (should not be extensive content of course), and this allows us to do a lot without requiring a hosted file.

About this proposal, I am not sure if you mean that the response would serve a file transfer directly as a response, but that's not contemplated in Nebraska and Omaha. One solution would be to have the files stored locally but change the link to a local URI. I haven't tried this but it should be supported, moreover, in the case of Flatcar, we also support overriding the URL that packages use when they're synced from upstream, so a combination of this could work.

joaquimrocha avatar Oct 22 '21 15:10 joaquimrocha

@guilhem , we are working on a branch called https://github.com/kinvolk/nebraska/tree/proof-of-concept and that has an extension to the omaha protocol for supporting metadata in packages. That metadata can be anything (should not be extensive content of course), and this allows us to do a lot without requiring a hosted file.

@joaquimrocha <3 metadata

About this proposal, I am not sure if you mean that the response would serve a file transfer directly as a response, but that's not contemplated in Nebraska and Omaha. One solution would be to have the files stored locally but change the link to a local URI. I haven't tried this but it should be supported, moreover, in the case of Flatcar, we also support overriding the URL that packages use when they're synced from upstream, so a combination of this could work.

Oh I didn't even think about it, that could be nice in some case (when files are synced by another tool).

I was more about, when creating a new package, being able to upload it with a HTTP data POST and storing it somewhere (locally on Nebraska instance could be fine for a small or non-critical instance).

guilhem avatar Oct 22 '21 15:10 guilhem