zlatko-ms / envarfiles Goto Github PK
View Code? Open in Web Editor NEWLoads GitHub env variables from JSON, YAML and Plain text files
License: MIT License
Loads GitHub env variables from JSON, YAML and Plain text files
License: MIT License
Add support for properties defined in a YAML file.
The feature should support :
All keys , including nested ones, should be considered as variable names.
For instance :
release:
version:
major: 1.0
minor: 4
should provide the following list of variables to inject :
release.version.major=1.0
release.version.minor=4
The easiest way of doing this is to exec a simple yq -e , if the return code is 0 then it is a valid yaml format
If the json parsing is implemented, then the yaml part can be branched on json by converting the yaml file to json using yq :
yq -j file.yaml
Add support for properties defined in a json file.
The feature should support :
All keys , including nested ones, should be considered as variable names.
For instance :
{ "version" : { "major" : "1.0" , "minor" : "4" } }
should provide the following list of variables to inject :
version.major=1.0
version.minor=4
The easiest way of doing this is to exec a simple jr -r , if the return code is 0 then it is a valid json format
Usage links are not correct, only the selection illustration had the correct pointer
Currently the default behaviour is to override existing variable values from file.
Should be changed to :
Refactor integration test for better coverage and clarity.
Features to test :
Formats on which to test all the features :
I am trying to run this action from a private repository but I get this message:
Unable to resolve action. Repository not found: zlatko-ms/varfiletoenv
When running the action from a public repository everything works perfectly
Could you provide me any help to solve this problem?. Thanks in advance
Currently the ITs use actions under the previous name, fix this ASAP !!!!
Build is a pre-requisite for test jobs.
Internal logs might be useful when looking for a specific definition issue, however they are not necessary in all cases and can become a burden when looking at large workflow logs.
An input parameter should indicate whenever to produce the internal logs.
Provide a way to read the variables from more then a single file.
A possible usage would be the following :
- name: Import project variables
uses: zlatko-ms/varfiletoenv@v1
with:
files:
./test/projectvars.properties
./conf/myvars.config
Shell is nice to start with, but we are not in 1978 any more and the listed enhancements will require more processing logic and therefore tests.
Hence we need to move the implementation to a higher level language in order to provide a sustainable maintenance process and also internal unit tests.
We suggest to move the implementation to python3 and to hold additional enhancement requests until this refactoring is completed.
add support of hcl (2) format to help IaC projects
Add an input paramter to support a selection of variables by their name.
The rationale is to avoid to import a bunch of variables from a (large) file , if you simply need a couple of them.
Possible usage definition :
- name: Import project variables with overriding
uses: zlatko-ms/varfiletoenv@v1
with:
names: |
version
rtag
paths: ./src/main/resources/tags.txt
would only import the variables version and rtag from the tags.txt file.
Add support of a flag to control the overriding of variables from the file.
When the flag is set to true ( default value ), then the file definitions would override any variable within the workflow with same name.
When flag is set to false, then the override would be disabled and variables defined in the workflow files would not be overriden.
A possible usage would be :
- name: Import project variables
uses: zlatko-ms/varfiletoenv@v1
with:
override: false
files:
./test/projectvars.properties
./conf/myvars.config
Define a single Known Issues section in the doc, eventually link it from other sections.
Re-organize the ITs in order to provide :
reduce overall IT execution time
Remove scripted coverage check and replace it with pycovcheck GH action
Currently the nested properties are separated via a fixed, underscore symbol.
Implement a parameter to override this character and support some of the Java/JS use cases on properties files
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.