-
Notifications
You must be signed in to change notification settings - Fork 34
feat: add IBM Softlayer to enable using IBM Classic Infrastructure #371
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
Conversation
f850131
to
56ba606
Compare
391ce62
to
981da5c
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @a-dubs, for adding this feature!
I have left in-line comments / requests. In addition to that, could we please add a documentation section to docs/clouds
, explaining at least what configuration is required to use the new cloud (api keys, etc)?
e3a0ff3
to
208438f
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks, @a-dubs, for addressing the concerns and fixing stuff.
Apart from in-line comments, what is still missing is:
could we please add a documentation section to docs/clouds, explaining at least what configuration is required to use the new cloud (api keys, etc)?
Documentation about IBM classic's specificities.
Another question: we refer to IBM classic / softlayer interchangeably, with the code and within log messages and exceptions. I wonder if it would be better to stick to one of the terms globally, or if not, clearly document it somewhere.
Good question. Unfortunately, at this point, I really think I'd rather refer to it as IBM Classic. This is mostly because despite the IBM provided sdk and api being called softlayer, this is not obvious to an end user, who sees either "IBM VPC" or "IBM Classic" when browsing IBM Cloud Console, with no obvious mention of softlayer. So if you agree, I'll go through and mass rename everything to IBM Classic. I would like the naming to be consistent throughout for sure. Also, when I write up the docs for this new IBM |
+1 to the renaming to classic, thanks! |
ff1dc9e
to
bcded64
Compare
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Many thanks, @a-dubs, for the renaming and documentation efforts, this is getting in shape.
I left in-line comments and in addition to that we need to:
- Include the new cloud config in
pycloudlib.toml.template
. - Remove Softlayer from
TODO.md
.
leaving a TODO for myself: |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for addressing the comments. I left some minor comments.
leaving a TODO for myself:
add more config options to pycloudlib.toml such as domain_name since this should not change between instance launches
Is this a TODO for this PR or for the future? If for the future, could you please create a GH issue to not forget about it, or let others help with it?
@aciba90 regarding the delete_image function, mypy only throws an error when I change the function definition to have image_id be an int. Also if |
b7b169e
to
d6e33de
Compare
Ahh, I see your point now, then I guess it does not matter that much. We could:
(1) does a superfluous type conversion at runtime I leave it up to you to decide. |
I'll go for (1) I guess then! Feels like the better solution among the rest. Thanks for your input! |
I'm doing one final round of testing to make sure everything functions as desired. I will report back when done. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM, thanks for the long work here!
IT FINALLY WORKED RAHHHH LETS GOOOO
|
Proof of working run (in case i gaslight myself and forget if it worked or not): |
Sweet @a-dubs, could you please resolve conflicts in |
Latest commit: 50089ec contains commented code and non-trivial changes. Is that all required? |
Adding the other infrastructure on IBM Cloud, IBM Classic, will allow pycloudlib to have full lifecycle management for IBM Cloud.
Co-authored-by: Alberto Contreras <aciba90@gmail.com>
Co-authored-by: Alberto Contreras <aciba90@gmail.com>
50089ec
to
df5e4f2
Compare
@aciba90 fixed version |
df5e4f2
to
5a13a2c
Compare
f7b6a89
to
ab9c09b
Compare
IBM Classic Infrastructure actually has quite a robust SDK. Adding IBM CLassic/Softlayer to pycloudlib will provide immediate value to Canonical, and I'm sure this could be useful for other 3rd parties.