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

[meta] consider renaming project or creating a new repo #1

Open
jeremy21212121 opened this issue Feb 21, 2020 · 0 comments
Open

[meta] consider renaming project or creating a new repo #1

jeremy21212121 opened this issue Feb 21, 2020 · 0 comments

Comments

@jeremy21212121
Copy link
Owner

jeremy21212121 commented Feb 21, 2020

This is mostly a stream-of-consciousness note to myself.

Since recent work was completed on the just-trivia branch, the scope of this project has expanded a bit. As such, it may make sense to create a new repo or otherwise change the name.

It started as a hacky little CI/CD setup. It provided good development workflow for me. I could just push to github and get coffee, like a serverless arrangement only I also control the server. I never managed to break a build, through a mix of being careful, having an identical staging environment and luck.

Now that I'm adapting this to other projects, there could benefit from making this into a personal library. Something I can just npm install rather than having to basically fork the project. The new features on the just-trivia branch are turning this towards a more robust solution for my side projects:

  • Rolls back to last known good commit if a build fails.

  • Email notifications on rollback failure.

  • Process monitoring, logging, etc by running it as a systemd service.

  • Code has been cleaned up a lot and moved to a more sane file/folder structure

I see the library working like this:

  • I need CI/CD for a new site, so I create a new project and install the library

  • Create an instance of WebhooksServer (working title), passing in the config:

    • All the stuff currently in config.js: port, host, routes, secrets

    • A deploy script and a rollback script for each route. The bash scripts could be generalized to support all the routes, but I prefer to keep the complexity in the JS and keep the bash scripts as simple as possible.

    • Maybe some optional strings for log and email messages that override the defaults

  • Call a listen() or start() method

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

1 participant