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

Maintainability and Ongoing Support for AWS Sub-generators #10579

Closed
1 task done
SudharakaP opened this issue Oct 8, 2019 · 18 comments
Closed
1 task done

Maintainability and Ongoing Support for AWS Sub-generators #10579

SudharakaP opened this issue Oct 8, 2019 · 18 comments
Milestone

Comments

@SudharakaP
Copy link
Member

SudharakaP commented Oct 8, 2019

Overview of the feature request

Maybe this has been tried or talked before but anyways I am just writing down my suggestion (apologies if this is a duplicate 😄). I was thinking about the aws subgenerators (both aws and aws-containers) and the problem you guys are having where you don't have credits to test it. I am suggesting a separate line of donations from people who use JHipster with AWS so that we could provide more support and tight integrations for the aws sub-generators. Is this something we could try out?

What I am basically suggesting is:

  1. Have a separate donation campaign; I am not sure which platform to use though yet.

  2. Maybe we can put a link at our AWS documentation to point AWS users to the donations page.

  3. Use this money to keep a testing server so that the core members can use to test it out or do development.

cc: @jhipster/developers

Motivation for or Use Case
  1. Promote more people to work on AWS sub-generators.

  2. Keep the AWS sub-generators up-to date.

  3. Provide testing credits so that the core developers/reviewers can test changes to this sub-generator and thus we can give a better user experience to users who are using this sub-generator.

  • Checking this box is mandatory (this is just to show you read everything)
@deepu105
Copy link
Member

deepu105 commented Oct 9, 2019

There are also #10472 and #8366 which are related

Here are my thoughts on this.

Every other cloud platform that we use(GCP, Heroku, CF) provides free credits so that we could work on those, but AWS has not provided any support yet. I'm not in favor of spending the OpenCollective donations on supporting something like this as it doesn't seem fair. But running a specific campaign should be fine, it can be done on OpenCollective. But first, Let me try to reach out to some AWS cloud people and see if we can work something out as providing AWS support is more beneficial to AWS than it is to us

@pascalgrimaud
Copy link
Member

@SudharakaP : first of all, thanks for helping and contributing the last weeks/months, specially on AWS.

Here my personal opinions, not from the team, and some historical stories.

About AWS. As Deepu said, they don't want to sponsor/support us.
Then, I don't want to spend too much money from Open Collective for supporting an option, because I don't think it's a sub generator which is used a lot. We have 0 official contributor on that, very few tickets, broken sub generator since 1 year and nearly 0 complain.

AWS sub generator was created by someone from my company. Then, maybe lack of time or interest, this sub generator was not maintained anymore. Then I know a lot lot lot of people with certifications. I asked but no one wants to work on this. As every contributors work on personal time, I totally understand this, or simply, they don't care about this sub generator.

That's why I'm reluctant to accept new features, new options in the core as it's hard to find people to maintain it. We have similar problem with:

What I'd like is to remove options which are broken since months, but it's hard as some people prefers keeping broken option.

As someone said, "we do our best", so let's go on.
Each ticket / bug with AWS (or something else), I can put some bug bounty, so it will help the contributor to have some credit to fix it.

@deepu105
Copy link
Member

deepu105 commented Oct 9, 2019

I think some things we can remove for JHipster 7 are below, lets start a discussion on the mailing list for that

  • UAA since OIDC IMO is a good alternative with easier maintenance
  • AWS sub gens since no one wants to maintain it
  • Couchbase

For upgrade subgen, I'm not sure though.

React IMO is quite stable and IMO a better option than Angular in many aspects 😉 but I understand the protractor part but that's coz protractor works better with Angular, maybe we can reconsider moving to Cypress

@murdos
Copy link
Contributor

murdos commented Oct 9, 2019

That's why I'm reluctant to accept new features, new options in the core as it's hard to find people to maintain it. We have similar problem with:

* UAA : the Protractor tests don't work well... See https://dev.azure.com/hipster-labs/jhipster-daily-builds/_build?definitionId=18&_a=summary -> no one want to fix it (cc @xetys)

* React : same problem with Protractor - see https://dev.azure.com/hipster-labs/jhipster-daily-builds/_build?definitionId=14&_a=summary -> we can compare with Angular which is really stable https://dev.azure.com/hipster-labs/jhipster-daily-builds/_build?definitionId=6&_a=summary (cc @wmarques)

* Couchbase with JDK8 : broken since 1 month -> see https://dev.azure.com/hipster-labs/jhipster-daily-builds/_build?definitionId=21&_a=summary (cc @tchlyah)

* Upgrade sub generator -> each release, we have some tickets on this

* AWS

I agree to remove UAA and Couchbase on next major release.
For React I think we should keep it if we solve our e2e issues with Cypress.

However I disagree for upgrade. As already discussed in #9908, the upgrade feature is useful and used. And maintained. At least @pvliss and me are working on it. If you want an official stream lead for this feature, it could be me (unless @pvliss or someone else is voluntary).
FYI there's an ongoing effort to move this feature to CLI #10037 and intent to better integrate the upgrade with the cleanup process.

But I share your concerns, and that's why I was reluctant to integrate the new openapi-cli subgenerator. I think a lot of "secondary" subgenerators (i.e. those that are not involved in original application generation + entity-*) could live as external modules (aws, kubernetes, openshift, cloudfoundry, ...)

@SudharakaP
Copy link
Member Author

There are also #10472 and #8366 which are related

Here are my thoughts on this.

Every other cloud platform that we use(GCP, Heroku, CF) provides free credits so that we could work on those, but AWS has not provided any support yet. I'm not in favor of spending the OpenCollective donations on supporting something like this as it doesn't seem fair. But running a specific campaign should be fine, it can be done on OpenCollective. But first, Let me try to reach out to some AWS cloud people and see if we can work something out as providing AWS support is more beneficial to AWS than it is to us

@deepu105 : Thanks for the information. Just for the record, I did reach out to AWS before writing this and after some emails I got a final answer which is I quote;

Unfortunately Amazon does not contribute or support open source based on our security requirements for government contracts.

Please do reach out to them btw; hopefully they change their mind. 😄

@SudharakaP
Copy link
Member Author

SudharakaP commented Oct 9, 2019

@pascalgrimaud : Thanks much for all the information. 😄

About AWS. As Deepu said, they don't want to sponsor/support us.
Then, I don't want to spend too much money from Open Collective for supporting an option, because I don't think it's a sub generator which is used a lot. We have 0 official contributor on that, very few tickets, broken sub generator since 1 year and nearly 0 complain.

I agree. If there's very little people who use AWS sub-generators then a campaign aiming them for donations might not succeed. I can keep maintaining the aws sub-generators as long as I can, but I was just thinking more of a scalable solution that we can use in general so that we don't have broken stuff hanging around due to lack of testing, willingness to work etc. 🤔 🤔

@pascalgrimaud
Copy link
Member

Thanks a lot @SudharakaP
Yes, just do your best. Then, if one day, for some reason you can't maintain it any more, no problem, it will stay like this :-)

@pascalgrimaud
Copy link
Member

I don't think this dicussion can go further, so let's close this, and let's do our best as always

@pascalgrimaud pascalgrimaud added this to the 6.4.0 milestone Oct 9, 2019
@deepu105
Copy link
Member

So guys, I had a chat with @arun-gupta, who is trying to help. @SudharakaP @jhipster/developers can you verify if this approximate calculation would be sufficient for our needs
https://calculator.s3.amazonaws.com/index.html#key=files/calc-f43540bf7f0634e9fc181d70d6c504e180518e2a&r=IAD&v=ver20190926fD

@SudharakaP
Copy link
Member Author

SudharakaP commented Oct 11, 2019

@deepu105 : Yay, a huge thanks for doing this; this is great, now we can test it more thoroughly. 😄 😄 In my opinion this monthly credit amount is enough for testing and improvements.

Although I think the cost breakdown could be altered more appropriately to to reflect what we use. As far as I know, Dynamo DB isn't used in our sub-generators as well as Route 53. Maybe replace those with Elastic Kubernetes Service and ECR and maybe CloudWatch? 😄

@PierreBesson
Copy link
Contributor

@deepu105 that's great ! We just need to have some credits to create tests EKS clusters and a few other resources but as soon as those tests are done (after a few days) we can destroy those resources.

@SudharakaP
Copy link
Member Author

@deepu105 : Just curious, did we get the credits? 😄

@deepu105
Copy link
Member

Sorry totally forgot about this one. I believe there is now a program where OSS maintainers can apply for credits https://aws.amazon.com/blogs/opensource/aws-promotional-credits-open-source-projects/

could you try it

@SudharakaP
Copy link
Member Author

@deepu105 : Thanks much for the link.

For this we need to create a AWS account and then apply for OSS credits for that account. But I think it would be more appropriate to use an official JHipster email to create the AWS account and apply for these credits, and create an account all core members can use. So maybe I suggest that someone in the core team apply for this instead rather than through my personal email. 🤔 😄

@deepu105
Copy link
Member

deepu105 commented Nov 23, 2019 via email

@PierreBesson
Copy link
Contributor

As I'm already the one in charge of the GCP organization and account, let me apply to the program and find a nice setup to give access to different members. I don't think it's a good idea to share the account between us so we will need some kind of SSO like Okta. This is already what I set up for users in my company (I do devops things at a small startup) so I'm familiar with the process. We just need to get approved for this open source program.

@pascalgrimaud
Copy link
Member

+1 @PierreBesson, you're the DevOps of the team !

@PierreBesson
Copy link
Contributor

Okay, I have filled out the form and created the "jhipster" AWS account. I asked for 1000$ per year. I believe it's reasonable considering that we will not leave things running all the time. Let's wait 2 weeks for their response and if no reply. We can contact them.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

5 participants