Skip to content
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

Oauth2 integration with CloudStack #7996

Merged
merged 36 commits into from Oct 31, 2023
Merged

Oauth2 integration with CloudStack #7996

merged 36 commits into from Oct 31, 2023

Conversation

harikrishna-patnala
Copy link
Contributor

@harikrishna-patnala harikrishna-patnala commented Sep 25, 2023

Description

OAuth2, the industry-standard authorization or authentication framework, simplifies the process of
granting access to resources. CloudStack supports OAuth2 authentication wherein users can login into
CloudStack without using username and password. CloudStack currently supports Google and Github providers.
Other OAuth2 providers can be easily integrated with CloudStack using its plugin framework.

The login page when the OAuth2 is enabled and corresponding providers are configured.

oauth-login

"OAuth configuration" sub-section is added under "Configuration" where admins can register the corresponding
OAuth providers.

oauth-sub-section

oauth-configuration-details

more details are in the doc PR apache/cloudstack-documentation#351

Types of changes

  • Breaking change (fix or feature that would cause existing functionality to change)
  • New feature (non-breaking change which adds functionality)
  • Bug fix (non-breaking change which fixes an issue)
  • Enhancement (improves an existing feature and functionality)
  • Cleanup (Code refactoring and cleanup, that may add test cases)

Feature/Enhancement Scale or Bug Severity

Feature/Enhancement Scale

  • Major
  • Minor

Bug Severity

  • BLOCKER
  • Critical
  • Major
  • Minor
  • Trivial

Screenshots (if appropriate):

How Has This Been Tested?

@codecov
Copy link

codecov bot commented Sep 25, 2023

Codecov Report

Merging #7996 (8137993) into main (bd52fa8) will decrease coverage by 0.59%.
Report is 1 commits behind head on main.
The diff coverage is 32.61%.

@@             Coverage Diff              @@
##               main    #7996      +/-   ##
============================================
- Coverage     29.20%   28.62%   -0.59%     
+ Complexity    30891    30293     -598     
============================================
  Files          5150     5165      +15     
  Lines        363420   364111     +691     
  Branches      53230    53306      +76     
============================================
- Hits         106144   104210    -1934     
- Misses       242730   245505    +2775     
+ Partials      14546    14396     -150     
Flag Coverage Δ
simulator-marvin-tests 24.44% <8.58%> (-0.81%) ⬇️
uitests 4.53% <1.22%> (-0.02%) ⬇️
unit-tests 14.74% <38.87%> (+0.04%) ⬆️

Flags with carried forward coverage won't be shown. Click here to find out more.

Files Coverage Δ
api/src/main/java/com/cloud/user/User.java 100.00% <100.00%> (ø)
...n/java/org/apache/cloudstack/api/ApiConstants.java 40.90% <ø> (ø)
...tack/api/command/user/ssh/CreateSSHKeyPairCmd.java 87.50% <ø> (ø)
...ack/api/command/user/userdata/ListUserDataCmd.java 100.00% <ø> (ø)
...api/command/user/userdata/RegisterUserDataCmd.java 72.00% <ø> (ø)
...rg/apache/cloudstack/oauth2/OAuth2AuthManager.java 100.00% <100.00%> (ø)
...m/cloud/api/auth/APIAuthenticationManagerImpl.java 81.39% <ø> (ø)
ui/src/components/view/ListView.vue 16.75% <ø> (ø)
ui/src/config/section/config.js 0.00% <ø> (ø)
ui/src/store/mutation-types.js 100.00% <100.00%> (ø)
... and 23 more

... and 166 files with indirect coverage changes

📣 We’re building smart automated test selection to slash your CI/CD build times. Learn more

@harikrishna-patnala
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@harikrishna-patnala a [SF] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✖️ el7 ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 7122

@GutoVeronezi
Copy link
Contributor

@harikrishna-patnala, do you have any documentation/specification/description of the workflow implemented?

@harikrishna-patnala
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@harikrishna-patnala a [SF] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✖️ el7 ✖️ el8 ✖️ el9 ✖️ debian ✖️ suse15. SL-JID 7155

ui/src/utils/plugins.js Outdated Show resolved Hide resolved
@harikrishna-patnala
Copy link
Contributor Author

@harikrishna-patnala, do you have any documentation/specification/description of the workflow implemented?

updated the description and raised a doc PR, please check here apache/cloudstack-documentation#351

@shwstppr shwstppr added this to the 4.19.0.0 milestone Sep 29, 2023
@harikrishna-patnala
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@harikrishna-patnala a [SF] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@harikrishna-patnala
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@harikrishna-patnala a [SF] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 7174

@harikrishna-patnala
Copy link
Contributor Author

@blueorangutan package

@blueorangutan
Copy link

@harikrishna-patnala a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@DaanHoogland
Copy link
Contributor

@harikrishna-patnala @rohityadavcloud this is ready (for review/merge) is it?

@harikrishna-patnala harikrishna-patnala marked this pull request as ready for review October 30, 2023 10:48
@blueorangutan
Copy link

Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 7565

@DaanHoogland
Copy link
Contributor

@blueorangutan test

@DaanHoogland
Copy link
Contributor

@shwstppr are all your concerns met?

@blueorangutan
Copy link

@DaanHoogland a [SL] Trillian-Jenkins test job (centos7 mgmt + kvm-centos7) has been kicked to run smoke tests

@rohityadavcloud
Copy link
Member

@DaanHoogland - this needs new pkgs due to changes after last pkg job

@blueorangutan package

@blueorangutan
Copy link

@rohityadavcloud a [SL] Jenkins job has been kicked to build packages. It will be bundled with KVM, XenServer and VMware SystemVM templates. I'll keep you posted as I make progress.

@blueorangutan
Copy link

[SF] Trillian Build Failed (tid-8161)

@blueorangutan
Copy link

Packaging result [SF]: ✔️ el7 ✔️ el8 ✔️ el9 ✔️ debian ✔️ suse15. SL-JID 7566

@DaanHoogland
Copy link
Contributor

@blueorangutan test alma9 kvm-alma9

@blueorangutan
Copy link

@DaanHoogland a [SL] Trillian-Jenkins test job (alma9 mgmt + kvm-alma9) has been kicked to run smoke tests

Copy link
Contributor

@shwstppr shwstppr left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Code LGTM

@blueorangutan
Copy link

[SF] Trillian test result (tid-8166)
Environment: kvm-alma9 (x2), Advanced Networking with Mgmt server a9
Total time taken: 45496 seconds
Marvin logs: https://github.com/blueorangutan/acs-prs/releases/download/trillian/pr7996-t8166-kvm-alma9.zip
Smoke tests completed. 115 look OK, 0 have errors, 0 did not run
Only failed and skipped tests results shown below:

Test Result Time (s) Test File

@shwstppr shwstppr merged commit 235e4fe into apache:main Oct 31, 2023
25 of 26 checks passed
@DaanHoogland DaanHoogland deleted the oauth branch November 1, 2023 14:16
@DaanHoogland DaanHoogland removed their assignment Nov 16, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

6 participants