Comments (2)
This requests a few features, I'll respond to them in turn.
Displaying the version of the module on disk as opposed to what's specified in the Puppetfile:
π. I thought that I implemented things to show the currently installed version, but I must have been mistaken about that.
Displaying the module version/SHA:
This gets a little bit stickier. In theory I could see if any git tags matched the currently checked out branch, but that increases the complexity of this a bit. Cool feature, would be awesome to have, but I don't know how much this should be prioritized. π for the idea though.
Command layout:
For the sake of sanity, every action needs to be under a subcommand. For instance, the deploy actions that use an r10k.yaml
are entirely different from the puppetfile actions. They use the same underlying behavior but they aren't necessarily joined. Thus, doing r10k puppetfile display
is going to be different from r10k deploy display
. Does that make more sense?
r10k deploy status
π for the subcommand name.
However, everything has to be complicated. :) To correctly show if a module is out of date, you would have to fetch the latest information - and if you're operating on a lot of modules, this could take a while. If nothing else, this should preserve deploy display
or a similar command so that you can see the status of things without doing a fetch.
Should a status command have a flag to determine if everything should be fetched beforehand?
command output:
π for color.
Formatting:
I was just going to go with yaml formatting in the general case. Is the real distinction on whether it r10k should output color/no color?
Also, thanks very much for submitting this awesome issue report! I really appreciate feedback like this!
from r10k.
Support for module expected/actual versions added in bd7ea47:
ops (/home/adrien/development/r10k/testing/deploy/ops/environments)
- add_mysql_error_logs
modules:
- git
actual: 13b2b8f0e93f3304f4b13c546246da7b51e78173
expected: 13b2b8f0e93f3304f4b13c546246da7b51e78173
type: git
- hubot
actual: 1ab6921e70ee1656ca753ea8c5f9591e8472eedb
expected: 1ab6921e70ee1656ca753ea8c5f9591e8472eedb
type: git
It doesn't encompass all of the behavior asked for in this ticket but it gets us a lot closer. I'm going to ship 1.4.0 with this behavior so that something can get out of the door; if additional functionality is required then we can incrementally revisit this and extend behavior in future releases.
from r10k.
Related Issues (20)
- Require docker image for ARM64 platform HOT 3
- rugged segmentation fault HOT 2
- environment_name is undocumented HOT 5
- Pass changed modules list into the postrun command HOT 6
- Setting install_path on a module in an environment source errors
- Tarball module content will be unpacked into an subdirectory with tarball name HOT 2
- R10k canβt be installed with Ruby 3.x HOT 6
- Add a TOC to the configuration doc
- svn doesn't work any more HOT 5
- Yaml environments fails to deploy banch when commit sha is a number HOT 1
- r10k gem fails to install on windows without admin or Create symbolic links user rights HOT 2
- R10k should be able to use bare Git repository without authentication as conrol_repo HOT 4
- R10k container - cannot generate types (missing puppet binary) HOT 1
- $modifiedenvs does not pass environment to postrun hook on deletion HOT 1
- r10k should not depend on gettext as a runtime dependency HOT 1
- r10k puppetfile install fails with "ERROR -> wrong number of arguments (given 2, expected 1)" when pool_size set to 1 HOT 1
- Not sure about the hiera.yaml statement in common-patterns HOT 2
- Allow override of exclude_spec option with puppetfile install subcommand HOT 1
- r10k gem is not compatible with faraday 2.9.0 HOT 2
- environment deployments: postrun $modifiedenvs lists all environments rather than only those modified HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
π Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. πππ
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google β€οΈ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from r10k.