Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Document how to modify deploy excludes #237

Closed
grasmash opened this issue Jul 20, 2016 · 9 comments
Closed

Document how to modify deploy excludes #237

grasmash opened this issue Jul 20, 2016 · 9 comments
Assignees

Comments

@grasmash
Copy link
Contributor

No description provided.

@webkenny
Copy link
Contributor

@sarahjean and I were talking about this and we think there's a bit more to this than just editing the deploy-excludes.txt file. Here's a proposal:

  • Move the excludes file into something other than core so people don't feel intimidated when they change it.
  • As a template, we might edit vendor to /vendor so BLT doesn't exclude recursive instances. Vendor is always needed in a BLT deploy.
  • Document the changes.

I can assist with this since it bit me very recently.

@sarahjean
Copy link

sarahjean commented Jul 27, 2016

So it looks to me like this is the intended method:

  • copy build/core/files/deploy-excludes.txt to build/custom/files/deploy-excludes.txt
  • make modifications there
  • in build/custom/phing/build.yml, add this:
deploy:
  dir: ${repo.root}/deploy
  exclude_file: ${repo.root}/build/custom/files/deploy-exclude.txt

Haven't fully tested yet and could be off base with some of my assumptions.

@grasmash
Copy link
Contributor Author

Yes that is intention.

Vendor should not be copied since it contains dev dependencies and should be rebuilt dynamically prior to deployment.

@webkenny
Copy link
Contributor

Ok, so it sounds like what Sarah is highlighting above simply needs to be better documented. I spent way too long trying to resolve why BLT wasn't building my whole build.

I'll issue a PR for this ASAP.

@sarahjean
Copy link

@grasmash For further context, the type of issue that @webkenny and I were both running into (on separate projects) was that in some of the libraries we were pulling in there were directories named vendor that did need pulled in, where the intent of the deploy-exclude.txt vendor is to exclude specifically the composer vendor directory.

There's also a line for bower_components in the BLT deploy-excludes file and since bower is for pulling in front end dependencies I could see quite a few cases where not deploying that could cause unexpected results. (Fonts, CSS files, JS plugins).

@grasmash
Copy link
Contributor Author

In that case, ignore /vendor but not vendor.

webkenny added a commit to webkenny/blt that referenced this issue Aug 1, 2016
@webkenny
Copy link
Contributor

webkenny commented Aug 1, 2016

Well here's a start to that then... #227 originally tagged "vendor". I've submitted a PR for /vendor to at least make that happen. #247

@grasmash
Copy link
Contributor Author

grasmash commented Aug 1, 2016

@webkenny There are two commands that run during the creation of the deployment artifact that we must consider.

  • An rsync command that copies files from the repository root into the deploy dir. This will not copy files that have been listed in build/core/files/deploy-excludes.txt.
  • A git add/commit command that will not commit files that have been listed in build/core/files/.gitignore.

My understanding of this issue is that we need to copy (rsync) all vendor dirs except for the root /vendor dir, since that is rebuilt dynamically. We then need to ensure that all vendor dirs are git added. To accomplish this, you would need to:

@webkenny
Copy link
Contributor

webkenny commented Aug 1, 2016

Fantastic, @grasmash. I'll get this fixed up and resubmitted. Great feedback.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

3 participants