Change log
0.10.0 Scripting capabilities
- Added the
action
andfile
resources action
can perform any scriptingaction
if the parametercondition
is metfile
can create and maintain files
0.9.0 Big stability improvements
- Added double the amount of test coverage for all resources and fixed a lot of bugs along the way
- Fixed ANSI escape character problems for certain terminals
- List of fixes:
- git-lfs Added missing
git lfs install
- path Fixed paths not parsing and saving correctly
- alias Fixed alias not parsing and saving correctly
- git-clone Fixed parent directory not working
- aws-profile Fixed region and output parameters
- homebrew Improved casks parameter to ignore any existing programs.
This fixes an app already exists error thrown by brew. This behavior can be disabled using
skipAlreadyInstalledCasks: false
- ssh-config Improvements to internal structure
- terraform Fixed error caused by ANSI escape characters
- git-lfs Added missing
0.8.0 Added ssh resources
- Adds resources for ssh key generation, ssh config setup and the ssh-add command.
- Resource
ssh-key
:- Generates a new ssh key if it doesn’t exist
- This resource support customizing the encryption type, comments, the file name, and customizing the number of encryption bits
- Resource
ssh-config
:- Sets up and maintains a user’s
~/.ssh/config
file. Almost all config options are supported.
- Sets up and maintains a user’s
- Resource
ssh-add
:- Manages a user’s ssh agent via the
ssh-add
command. - It has support for the macOS specific
--apple-use-keychain
- This resource is buggy in CLI versions below 0.3.1 when using the standard reporter. Please use CLI version 0.3.1 or greater.
- Manages a user’s ssh agent via the
0.7.0 Importing
- Added importing. The import command allows users to automatically generate
Codify configs based on the tools and programs already installed on their system.
Just type
codify import <type1> [type2] [type3]....
Upgrade to codify cli >0.3.0 to use the import command. - Added filtering for resource array parameters in stateless mode.
- Path resource fixes
BREAKING CHANGES:
- Removed the
remote
parameter fromgit-clone
. Use the existing repository parameter instead. This was done to simplify the logic since remote was only an alias of repository. This parameter may be added back in the future if alias support is added.
0.6.0 Asdf is now here
- Added asdf resources including
asdf
,asdf-plugin
,asdf-local
,asdf-global
andasdf-install
. See the asdf resources page for more info. - Fixes for nvm resource.
- Fixes for vscode resource.
- Fixes for the pyenv resource.
- Debugging improvements to improve developer productivity.
0.5.0 Major refactoring and improvements
- Internal improvements and maintainability improvements.
- Major code refactors enabling faster development in the future.
- Performance improvements.
- Adds the framework for stateful mode in the future.
0.4.0 Android studios
- Adds a Android Studios resource.
- The Android Studios resource supports fetching available versions directly from Google and allows the installation of previous Android Studio versions.
- It also supports beta and preview versions of Android Studios.
0.3.0 Git git git
- Adds a git resource.
- The resource configures the global git email and username
0.2.0 Java and jenv
- Adds a jenv resource.
- The jenv resource allows the installation and configuration of jenv
- Additionally the jenv resource adds the functionality to directly install LTS versions of the JDK. This is additional functionality on top of what jenv by default provides. Requires homebrew to be installed.
0.1.0 Alias and git clone
- Adds an alias and git clone resource.
0.0.0 Initial release
- Initial release of the core plugin;
- Adds support for aws-cli, aws-profile, git-lfs, homebrew, nvm, path, pgcli, pyenv, terraform, vscode and xcode-tools;
- Adds sudo handling.
0.4.0 Updates, updates, updates
- Added
codify update
command to perform automated updates - Bug fixes for multiple named configs and destroy
- Internal refactoring
- Moved plugin cache to
~/.codify
0.3.1 TTY fixes
- Bug fix for tty messages not showing up (for example SSH passphrase prompts). Now all tty messages will be shown to the user and not hidden.
- Updated spinner style.
0.3.0 Importing is now live
- Added importing. The import command allows users to automatically generate Codify
configs based on the tools and programs already installed on their system.
Just type
codify import <type1> [type2] [type3]....
Type1, type2, type3 represent the type ids of the resources to be imported such as homebrew, nvm, jenv, etc… - Added UI to allow imports to specify the required parameters to configure the import. For example when importing an alias, the name of the alias needs to be passed in.
- Import will return a config of the current state of the resource on the system. If the resource is not found then an empty array will be returned.
- Import is supported in all output modes (default, plain, debug)
BREAKING CHANGES:
- Re-named uninstall command to destroy to match the name of the operation. The name destroy makes more sense in the context of creating and destroying resources which encompass more than tools and programs that can be installed or uninstalled.
0.2.0 Performance improvements
- Build improvements, reduced binary size and performance improvements.
- Removed unnecessary files from the final installer.
0.1.0 Error source mapping
- Adds improved error handling.
- Adds line numbers and code fragments for validation error messages to make it easier to pinpoint where an error is
- Adds support for YAML file parsing
0.0.0 Initial release!
- Initial release of Codify.
- Support
codify apply
andcodify plan
commands - Adds plugin parsing and codify.json parsing.
- Adds plugin initialization, dependency resolution, and apply order sorting
- Adds UI for displaying plans