You cannot select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
forgejo/modules/repository
Kyle D 8220e50b56
Substitute variables in path names of template repos too (#25294)
### Summary

Extend the template variable substitution to replace file paths. This
can be helpful for setting up log files & directories that should match
the repository name.

### PR Changes

 - Move files matching glob pattern when setting up repos from template
- For security, added ~escaping~ sanitization for cross-platform support
and to prevent directory traversal (thanks @silverwind for the
reference)
 - Added unit testing for escaping function 
- Fixed the integration tests for repo template generation by passing
the repo_template_id
- Updated the integration testfiles to add some variable substitution &
assert the outputs

I had to fix the existing repo template integration test and extend it
to add a check for variable substitutions.

Example:

![image](https://github.com/go-gitea/gitea/assets/12700993/621feb09-0ef3-460e-afa8-da74cd84fa4e)
1 year ago
..
collaborator.go Always reuse transaction (#22362) 2 years ago
collaborator_test.go Rename `repo.GetOwner` to `repo.LoadOwner` (#22967) 1 year ago
commits.go Add context cache as a request level cache (#22294) 1 year ago
commits_test.go Improve avatar uploading / resizing / compressing, remove Fomantic card module (#24653) 1 year ago
create.go Remove stars when repo goes private (#19904) 1 year ago
create_test.go Map OIDC groups to Orgs/Teams (#21441) 1 year ago
delete.go Allow repo admins too to delete the repo (#23940) 1 year ago
env.go Implement actions (#21937) 1 year ago
fork.go Implement FSFE REUSE for golang files (#21840) 2 years ago
generate.go Substitute variables in path names of template repos too (#25294) 1 year ago
generate_test.go Substitute variables in path names of template repos too (#25294) 1 year ago
hooks.go Implement FSFE REUSE for golang files (#21840) 2 years ago
init.go Replace placeholders in licenses (#24354) 1 year ago
init_test.go Make label templates have consistent behavior and priority (#23749) 1 year ago
license.go Replace placeholders in licenses (#24354) 1 year ago
license_test.go Replace placeholders in licenses (#24354) 1 year ago
main_test.go Implement FSFE REUSE for golang files (#21840) 2 years ago
push.go Use the type RefName for all the needed places and fix pull mirror sync bugs (#24634) 1 year ago
repo.go Use git command instead of the ini package to remove the `origin` remote (#25066) 1 year ago
temp.go Implement FSFE REUSE for golang files (#21840) 2 years ago