Releases: facebookincubator/TTPForge
v1.5.0
This release introduces a myriad of features and bugfixes for the TTPForge engine including remote execution over SSH, a static validate command, UUID-based TTP lookup, and improvements to HTTP blocks and step-level controls.
Changelog
- 2ad2a6b Fix nil panic in subTTP cleanup when a step's cleanup fails (#618)
- da3103f Allow per-step execution timeout override (basic and file steps) (#617)
- 658119b Fix flaky TestKillProcessExecute by using a truly non-existent PID (#616)
- 5f97f82 Remove redundant validation checks (#615)
- 8b04d6b Consolidate parseutils into canonical PreambleFields (#614)
- 87a30a9 Wire up TTP-level env to inject into all steps (#613)
- cebb53b Enable Empty Default String Argument (#612)
- 35f34b1 Propagate actual command exit code instead of always returning 1 (#611)
- 8b3636f Change check remote default to local runner, update docs (#610)
- 8ad1fdd Capture expect step output for check verification (#609)
- 797b93e Update killprocess block (#608)
- 7a917cb Add step stderr/stdout output check (#607)
- b04fa0f Update copy_path block to support remote file operations (#606)
- cb7e177 Add remote block to TTPForge to enable execution over SSH (#605)
- 43b52db Show warning about absent config only if output is terminal (#604)
- 5d507f8 Fix modernize issues in args (#603)
- af8775b Fix modernize issues in cmd (#602)
- a331083 Bump golang.org/x/crypto from 0.39.0 to 0.45.0 (#601)
- 94eb606 Update CodeQL Workflow to V4 (#600)
- a1d3574 Change the ttp uuid lookup to use parsettp (#599)
- 2099fc1 Add an option to run ttpforge with just UUID (#598)
- 83b79b9 Add a noProxy flag to CLI (#597)
- 668b18a Fix modernize issues in blocks (#596)
- 176c4a9 Fix regex pattern matching for validate command (#595)
- 8dfe1b6 Reload sub-TTP after templating args to fix step-level template resolution (#594)
- c89e842 Add enum authors command (#593)
- 7aef0ab Fix staticcheck issues in blocks (#592)
- 6e733d7 Fix staticcheck issues in blocks (#591)
- db865d3 Add documentation for validate command (#590)
- 5b93d12 Standardize help messages (#589)
- 911e50d Fix modernize issues in blocks (#588)
- 7819c19 Fix bug with StepVars used for SubTTP steps (#587)
- 16f3333 Add authorship information to TTPs (#586)
- 2280254 HttpRequest InsecureSkipVerify Option (#585)
- cdfde5f HttpRequest Disable Redirects Option (#584)
- d05d5d2 Update integration testing scripts (#583)
- d68bd9d Update blocks to separate validation for parse-time and execution (#582)
- f6dc696 Fix govet issues in testutils (#581)
- 62d3e66 Add shell completion for TTP references and repository names (#579)
- 9743dfe Add --no-checks flag to run command (#578)
- c502a7b Add content validation and command checks (#577)
- eb6f2f5 Deprecate parse-yaml command (#576)
- 3e82507 Bugfix: Logger config not being respected if config file is absent (#575)
- 5356a12 Add ttpforge validate command (#574)
- 031108c Fix stdout/stderr capture for output without trailing newlines (#573)
- 51783f3 Fix staticcheck issues (#572)
- c5c6f02 Fix bug with path arg type and add env var expansion (#571)
- d85758b Replace fmt with proper logging in blocks (#570)
- 7ab3580 Fix bug in error handling for ttpforge run (#569)
- 45590c2 Implement Windows superuser check (#568)
- 2092895 Use global verbose flag in enum ttps (#567)
- 5783787 Add create uuid command (#566)
- efef3ca Prevent move command from moving directories (#565)
- 5cf258b HTTPRequest Block Response Headers (#564)
v1.4.0
This release contains some new CLI commands for interacting with TTPs in ways that are dependency safe. These should help make it much easier to interact with TTPs that call other TTPs (aka Sub-TTPs).
ttpforge move [source] [destination]will move a TTP yaml file and automatically update any other TTPs that reference this file as a sub-TTP - read more herettpforge remove ttp [path]will check other TTPs for references to this file, warning if any exist or deleting the file if none exist - read more herettpforge enum dependencies [path] --verbosewill check if the provided TTP is referenced in other TTPs and list any that exist - read more here
Additionally, logging will now indent sub-TTP outputs in the main TTP output. This should hopefully make it much easier to visually parse what is going in complex TTP chains at a glance!
Finally this release also contains various bugfixes, goreleaser changes, and a new parse yaml command to assist in validating TTP yaml.
Changelog
- 9a73082 Bugfix to restore logger configuration flags (#563)
- 3e07c38 Bugfix to close file handle in CreateFile block after completion (#559)
- d8f2506 Bugfix for default HTTPRequest block behavior when no params are provided (#561)
- 1a58f0e Bugfix to allow blocks to reference their own StepVars in their own cleanup step (#560)
- 1209040 Autogenerated test file update (#558)
- 95526aa Create TTPForge remove command (#557)
- d627df5 Create TTPForge enum dependencies subcommand for enumerating subTTP dependencies (#555)
- aa98801 Polish for TTPForge Move command (#554)
- 28e6443 Update how TTPForge Move command handles references (#553)
- 9e9b2be Add indentation for subTTP outputs (#552)
- 0a07fe3 Create TTPForge Move command (#551)
- 26e7a9c Add args to boilerplate created by TTPForge Create TTP (#550)
- 2542862 Add Parse YAML command to Forge CLI (#549)
- 9c9ea8d Add Parse YAML TTPs Utils (#548)
- 50d6d00 Goreleaser Version set to 1 (#547)
- 1209040 Update Goreleaser to ignore Windows ARM Builds (#546)
1.3.1
- Kill Process Improvements
- TTPForge StepVars Bugfix: Fix newline appended to stdout
- Enum Command
- Adding Kill Action to TTPForge
- Bump golang.org/x/crypto from 0.31.0 to 0.35.0
- Add step level templating
- Refactor HTTPRequest Testing
- Refactor FetchURI testing
- Adding Templating Documentation
- Add Platform Info to Template Render Context
- Goreleaser Version set to 1
v1.2.3
v1.2.2
v1.2.1
v1.2.0
v1.1.0
New release to celebrate the 1-year anniversary of TTPForge going open source! We’ve made quite a few updates since the last release, including:
- Adding support for default cleanup actions.
- Updating TTP Repository and SubTTP Handling.
- Improving core code infrastructure.
- Adding a new TTP creation command: ttpforge create
- Expanding TTP metadata tracking and validation.
- Adding a new expect action.
- Shipping many quality-of-life updates and polishing.
Big thanks to @inesusvet, @d0n601 , @l50, @nicolagiacchetta, @w51d, and everyone else who contributed to this latest release! Yours truly, @d3sch41n :)