Centrally managed Dangerfile(s) for the Technekes organization
Import the Dangerfile from this repository into your projects Dangerfile
# Dangerfile
danger.import_dangerfile(github: 'telus-agcg/danger')
MIT License. See LICENSE for details.
Centrally managed Dangerfile(s) for the Technekes organization
License: MIT License
Centrally managed Dangerfile(s) for the Technekes organization
Import the Dangerfile from this repository into your projects Dangerfile
# Dangerfile
danger.import_dangerfile(github: 'telus-agcg/danger')
MIT License. See LICENSE for details.
With the addition of SQLite visualization feature, we need to add a check for debug: true
present in configuration examples.
We are currently raising an error if a PR title does not include the program_set
, but we need to change this validation so it raises an error if the PR title does not start with [program_set]
should be changed to
unless github.pr_title.start_with?("[#{program_set}]")
# raise error
end
Currently the Dangerfile for incent-config
will check for a branch prefix of feature/
or release/
. This is a great check that should be applied to gems and services.
Add a check for changed rendered programs ([program-set]/programs/*.json
) and reject the build if there are changes.
Do this in Danger:
❯ git status --short | grep json | wc -l
0
This check accounts for the the newer syntax:
it 'does stuff', :focus do
...
end
but not the older format of:
it 'does stuff', focus: true do
...
end
# or
it 'does stuff', 'focus' => true do
...
end
Once the Dangerfile that is being worked on here is considered complete it should be moved here as ./incent-config/Dangerfile
.
Raise error if products.json exists in references for configs.
This follows our documented process and saves from manually having to make comments like this.
There is an edge case where all of the tokens (PR title, commit title, branch) pointed at a particular program-set but the actual changes were in a different directory.
There is currently a Dangerfile
at the root of this repo that is used for gems. We should move that into a gems
directory and import it into gem repos. Once gems have been updated to use this version, we need to move the incent-api
Dangerfile
into a services
directory here, and update incent-api
(as well as any service app repos) to use this new version. Once that is done, we can update Dangerfile
at the root of this repo to actually check this repo. We should have four Dangerfiles when this is finished:
./Dangerfile
./gems/Dangerfile
./incent-config/Dangerfile
./services/Dangerfile
If the PR title does not contain the program-set
, an unhandled error is raised. We need to check for the program-set
in the branch name, and also handle the possibility that neither the PR nor the branch contains a valid program-set
.
Add modified_program_sets.first after:
https://github.com/technekes/danger/blob/80f4a349b0c403de34b5fe16ea94546948dcdd0b/incent-config/Dangerfile#L69
Ensure that when a change is being made to a reall program-set (not n/a) that an update has been made to the CHANGELOG as well. There is some "prior art" on this: https://github.com/technekes/danger/blob/094701d5ebab826b5952d8c80bdfeba6b2664691/gems/Dangerfile#L29-L34
PR's from Dependabot do not include a CHANGELOG entry and should not fail.
Add a check to make sure the branch name is hyphenated instead of underscored.
PR's should always (I think) include a link to a sized and prioritized Issue.
Exceptions:
Add Danger checks to check if YAMLs were updated in case any jsonnet template was updated (and vice-versa)
Further discussion of troubleshooting for issue #24, it was discovered that we are running an "instance of Docker within a remote container of Docker". This is not quite desired as it makes troubleshooting and running locally, painful. Open to further discussion here.
(potentially a separate issue)
It's been proposed that we have the logic that determines the program-set in one central location so it can be used within this repository and others as to not duplicate this process.
There is a convention (perhaps undocumented) for prefixing release branches with release/
instead of feature/
. I believe this applies to all Dangerfiles in this project.
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.