Releases: serversideup/spin
v2.1.0-alpha1
v2.0.2
Prepping for Spin Pro 👀
- Improved documentation on creating your own template
- Updated .dockerignore for better compatibility
- Improved "line_in_file" functions for templating
Full Changelog: v2.0.1...v2.0.2
v2.0.1
Bug fixes
- Fixes issue with encrypted files and
spin deploy
More detail
This release is a minor fix for spin deploy
where the script could not load environment variables from the spin.yml
file when it was encrypted. There was a really deep "domino effect" on potential solutions, but the easiest and most sensible was to require the .vault-password
file to be set if the configuration files are encrypted. This prevented major workarounds in order for things to work with Ansible.
v2.0.0
🚀 MAJOR Improvements to Spin
With the last beta release we noticed there were a number of pain points of getting up and running with Docker. We've been quietly refactoring and improving a ton of things in Spin over the last number of months. The reason why we were quiet about it was because we weren't sure it was going to be possible.
Good news is: IT'S TOTALLY POSSIBLE 💪
🎥 Video to learn more
🤩 New Features
Holy smokes, where do we even begin 😆
spin deploy: Zero-downtime deployments. No CI/CD required!
Deploy right from your terminal! We learned many users wanted a simple way to deploy their application quickly without the headache of configuring CI/CD. Although we still support and recommend CI/CD for large teams, we also created spin deploy
as an option for users to quickly deploy their application without any downtime.
How it works:
- Spin creates a local Docker registry on your machine
- We find the Dockerfiles in your project, build them, and push them to your local registry
- We then create an SSH tunnel between your server and your machine, allowing the server to pull the docker image from your computer
- Spin verifies the deployment was successful and cleans up after itself
All of this is done without any downtime to your application 🥳
Anyone can make Spin templates
We added the ability for anyone who wants to make their own Spin template can do so all using GitHub. 🥳
Spin will continue to provide "official templates". For example, running spin new laravel
will pull from our completely refactored Laravel template, with serversideup/php v3
spin mkpasswd: Make password creations easier
Previously, we had you manually prepare a temporary container to create password hashes for the .spin.yml
file. To make this easier, we created spin mkpasswd
.
This runs a ~3MB Docker conatiner from serversideup/mkpasswd to dramatically speed this process up for you 😃👍
💯 Our core design principles
Nothing has changed in our core design principles. We've only enhanced these values even more:
- ALL infrastructure configurations should securely be stored and centrally managed within the repository
- Every environment (development, ci, staging, production, etc) should be 100% the same, regardless of the operating system it's running on
- The only requirements a user should need to run Spin is installing Docker. All other dependencies should be automated so users do not have to worry about installing other developer tools
- Every environment is designed to be disposable and repeatable
❤️ Contributors
v2.0.0-beta5
🐛 Fixes
- Fixed syntax error in Laravel template #78
v2.0.0-beta4
🐛 Fixes
- Update Laravel templates to support newest beta of Docker PHP images (#76)
v2.0.0-beta-3
🐛 Fixes
- Improved experience with
lineinfile
onspin init
(4c045df)
v2.0.0-beta-2
🐛 Fixes
- Fixed issue where v1.1.0 was being shipped with new projects
v2.0.0-beta-1
🚀 New Features
Spin has taken a huge leap forward by taking our experience from local development and extending it all the way through CI, Staging, and Production.
🤩 Live Demo
We put together a live demonstration showing the new features and how they all work.
💪 Complete re-write
Everything has been rewritten to support a new and scalable code structure.
🚀 Support Shipping to Production
We wrote an Ansible Collection that will help you provision and maintain your servers. This is as simple as running spin provision
.
✨New Commands
- spin base64 - Encode and decode text files with Base64.
- spin init - Initialize Spin in an existing project
- spin provision - Provision servers using our Ansible Collection
- spin prune - Clear all Docker and Spin cache.
- spin vault - Encrypt files using Ansible Vault.
⚠️ Breaking Changes
These features are still considered "beta" but we are publishing this as the latest release because there should not be any breaking changes. If you do run into any issues, please open an issue.
v2.0.0-alpha-22
Refactor template file path handling in init.sh