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 metadata provider for Oracle, Alicloud, Ikoula and Azure #3543
base: master
Are you sure you want to change the base?
Add metadata provider for Oracle, Alicloud, Ikoula and Azure #3543
Conversation
02817d0
to
e5106a8
Compare
uh, where's the gomod file? |
I've tested it manually on my own k3os image in Oracle Cloud. It works flawlessly. |
@rn CC |
Could you please squash/re-arrange the commits so that they are logical rather than historical (i see quite a few later commits fixing up earlier commits, for example) |
The CI is also failung with"
The other CI failure is unrelated |
@rn may I know how do you add vendor packages correctly? Also regarding the git commit issues...that's the way git is...the underlying data structure git uses to keep commits, i.e. merkle tree is specifically used to track layered hashes and history...so viewing it chronologically like a replay machine makes more sense. I will squash as much as I can. edit: oh thank goodness the rebase didn't f*ck up like it always used to be |
it's been quite a while for me and the go eco system has moved quite a bit, but |
@rn thanks, I searched vendor.conf and it lead me to rancher/trash and the format your tool uses are similar so I'm quite confused, now I should be able to add the deps and fix the build... |
e13790e
to
e2b2e08
Compare
well... |
okay so its apparently the limitation of that vndr tool...it keeps deleting the package if the module is deemed "unused", so it can't track transitive requirements at all |
adc07a9
to
e5b3953
Compare
I think I figured out the reason the packages can't build: my git metadata is corrupted. It recognized some vendor folder as dangling submodules, and I have to replace the dangling data back with a correct pointer to a tracked folder forcefully, it should build just fine now after I re-add some transitive dependencies @rn I've finally managed to fix it |
8dc9c5e
to
9c69cd2
Compare
…nfrastructure Signed-off-by: Steve Fan <29133953+stevefan1999-personal@users.noreply.github.com>
Signed-off-by: Steve Fan <29133953+stevefan1999-personal@users.noreply.github.com>
e765469
to
f2f7b01
Compare
…cloud infrastructure Signed-off-by: Steve Fan <29133953+stevefan1999-personal@users.noreply.github.com>
f2f7b01
to
31554b7
Compare
@rn any chance for lgtm? |
- How to verify it
Make a new instance from Oracle Cloud, there's a free tier available so it is quite handy to test on, I've tested it personally across all my available servers and it works very well. Recall that my main goal is to hope it would work on k3os.
- Description for the changelog
Just added support for more platforms. This will cover most well known major cloud platforms
because they had free trials.Although I've also tested it personally and its great however, on Azure I have issues obtaining user data that Azure team disabled it for some reason (this is stupid), so the user data field is going to be empty. This issue had been in triage of backlog for a year now. There's currently no way to get it unless we reverse engineer WALinuxAgent and replay the entire process but their code is written in Python...
Also, Ikoula is really doing its best to disgust developers, as they do not serve the metadata in a static location, but rather served it on the DHCP server (technically also the virtual router server of Apache CloudStack). I have to pull in a huge library that can send DHCP request, intercept which server responded the request at the cost of increasing the binary size by 30%. Should this not be necessary I can remove this, because there might be people complaining about the size of this particular executable now because it is not following the "less is more" philosophy.
I also wanted to renovate this project a little as I observed this project still uses an outdated "vendor tool" that doesn't even work at all (let alone the pain of waiting 15 minutes to download all that vendored code that should not happen in the first place), so I tried to convert the project to use go modules but failed at my best, the remaining works is left opened as #3545. Because school season is kicking in I might had limited time to do this. Anyone had better expertise can try and finish it.
- Description of a shorter changelog
go mod vendor
to provide and cache vendor packages in CI once and for all- A
picturevideo of a cute animal (not mandatory but encouraged)https://www.youtube.com/watch?v=1bhn-z8xA5M