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

1st July - Sceptre GitHub Organization Move #615

Closed
ngfgrant opened this issue Jan 28, 2019 · 9 comments
Closed

1st July - Sceptre GitHub Organization Move #615

ngfgrant opened this issue Jan 28, 2019 · 9 comments

Comments

@ngfgrant
Copy link
Contributor

Hey there,

I wanted to give you advanced notice as to some of the community changes that will be happening over the next few weeks.

For quite sometime I have been keen to facilitate more community engagement. One of the things getting in the way is the way the project is structured on GitHub. We have been able to acquire the GitHub organisation name "sceptre" and shortly this will become the home of the project (still supported by Cloudreach) 🎉

Benefits

Having our own organisation will bring with it a number of benefits, including:

  • A more interactive way of discussing things via GitHub Teams
  • More community control with delegation of permissions
  • Easy to discover repositories for Hooks & Resolvers
  • Separated docs repository offering versioned static docs.
  • Support with testing, integration and deployment to PyPi for community contributed plugins

Why are the above points important? Well, it basically boils down to giving you more control so that you can contribute with less friction and improve the part of the project you need to improve with less bottleneck. Teams are a great way of managing this but it is not possible due to security restrictions to do this in the current GitHub org.

Future Project Architecture

Over the course of the next year we are going to extract out AWS specific functionality from what we consider the "core" codebase. The "core" will be responsible for managing all the file system operations, parameter passing, the dependency graph generation and define an API for the Python module and CLI to use. The core will also handle "plugins" such as Hooks, Resolvers and a new concept of "Providers".

As a first step we plan to move all the AWS specific functionality out into a "Provider" plugin which will implement the core API. This does a few things:

  • provides a model to implement new providers such as GCP and Azure
  • gives us flexibility on how fast new features can be adopted for a specific provider without affecting the core.

We will have different standards for various parts of the project which will hopefully offer a trade off between quality, reliable software and fast moving updates.

Quality Levels

In the future there will be 5 parts to Sceptre:

  1. Core - Tightly controlled with high coding standards
  2. CLI - Moderately tightly controlled with good coding standards
  3. Plugin: Providers - Moderately tightly controlled with good coding standards
  4. Plugin: Hooks/Resolvers - Free for anyone to contribute with recommended standards but come with little/no guarantee. "Starter" projects will be provided to do most of the project heavy lifting "just add code" (and hopefully some tests 😉).
  5. Documentation, Examples and Marketing materials. Doing something cool with Sceptre, or want to write a kick-ass getting started guide that you wish was there when you first discovered the project, this is an extremely important part of the future of this project.

Migration Process

At some point we will need to migrate this repository to the new org. All links should still work but I will add a notice to the code as well encouraging those who use a direct pointer to git to update their remote origin. Everything else should "Just work".

Get Involved

Contributing to Sceptre is about to become much easier and you'll be able to contribute in an area that matters to you, hopefully with less bottleneck.

If you would like to be added as a member in the new organisation please leave a comment below. If you know what areas you would be interested in (Core, CLI, Providers, Hooks/Resolvers, Documentation/Marketing) then also let me know in the comments and I can add you to the relevant teams.

Cheers,
Niall

@zaro0508
Copy link
Contributor

zaro0508 commented Feb 1, 2019

This is great however i'm wondering how this nullifies the need for issue #611 ? I'm would be interested in core, cli, hooks, docs and resolvers.

@ngfgrant
Copy link
Contributor Author

ngfgrant commented Feb 1, 2019

Amazing thanks @zaro0508 there is a neat feature in GitHub orgs for team chat.

@zaro0508
Copy link
Contributor

zaro0508 commented Feb 1, 2019

Ahh, i didn't realize that. I just gave it a try but do not feel that it's the same as what was requested in issue #611 The request in that issue is an interactive channel for discussion like a real (synchronous) conversation. The Github discussion feature is more like a mailing list, akin to google groups, which is good for asynchronous communications.

@ngfgrant
Copy link
Contributor Author

ngfgrant commented Feb 2, 2019

Ah ok. I will ask to see if our IT team can create a public slack channel for this sort of thing although it might not something I’ll monitor frequently.

One of my concerns about a more synchronous channel is that good questions and answers will get lost in the general chat. We should endeavour to take any good questions, raise them as issues or stackoverflow questions.

@m1keil
Copy link
Contributor

m1keil commented Feb 3, 2019

That's great news. I'm definitely keen on all of the above.

@et304383
Copy link

So, you're going to try to be Terraform now?

@ngfgrant
Copy link
Contributor Author

@et304383 not really, just trying to make it easier for people to contribute to the areas they are interested in, with less blockers. Pretty standard approach to a GitHub org :)

If you want to draw a comparison to Terraform then I guess you could say we are going to take a cloud-native approach to IaC offering all the advantages of the current project just on the other cloud providers.

@ngfgrant ngfgrant pinned this issue Apr 25, 2019
@ngfgrant ngfgrant changed the title Coming Soon: New Sceptre GitHub Organization 1st July - Sceptre GitHub Organization Move Jun 17, 2019
@ngfgrant
Copy link
Contributor Author

I am planning to move this repository on 1st July 2019. GitHub will automatically redirect refs but I will give instruction on how to manually update if you directly reference this remote in your scripts.

@ngfgrant
Copy link
Contributor Author

ngfgrant commented Jul 1, 2019

Reminder it is happening today!

@ngfgrant ngfgrant closed this as completed Jul 2, 2019
@ngfgrant ngfgrant unpinned this issue Jul 2, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants