Is there a way of doing an sparse checkout with Chef and its git
resource? Or what is the best way to accomplish the equivalent of that?
As doing a sparse checkout requires modifying a file in the .git
folder before doing the pull, I don't find a way of having the git
resource configure the repository but not attempting to pull before I can edit that file. If I wait until the end of the git
resource execution, then the total number of files of the tip of the branch will be already downloaded.
For reference this is what I'd otherwise do if I were doing a bash script:
git init <my_repo>
cd <my_repo>
git remote add origin <my_repos_url>
git config core.sparsecheckout true
echo "my_directory/*" >> .git/info/sparse-checkout
git pull --depth=1 origin master
Question also posted here: https://discourse.chef.io/t/sparse-checkout-with-git-resource/11834