From 52b383d073c069bb2b86a178701f2a5b0686f8fc Mon Sep 17 00:00:00 2001 From: Chris Kankiewicz Date: Fri, 17 Jan 2020 21:37:40 -0700 Subject: [PATCH] Added artifact generation make contexts (updated build contexts) --- Makefile | 24 +++++++++++++++++++----- artifacts/.gitignore | 2 ++ 2 files changed, 21 insertions(+), 5 deletions(-) create mode 100644 artifacts/.gitignore diff --git a/Makefile b/Makefile index 67b02e0..dbff875 100644 --- a/Makefile +++ b/Makefile @@ -1,10 +1,13 @@ -build: install compile # Install application dependencies and build assets +ARTIFACT_FILES=app node_modules vendor LICENSE README.md index.php +ARTIFACT_NAME="DirectoryLister-$$(git rev-parse --short HEAD)" -install: # Install application dependencies - @composer install && npm install +dev development: # Build application for development + @composer install --no-interaction + @npm install && npm run dev -compile: # Compile application (CSS and JavaScript) assets - @npm run dev +prod production: # Build application for production + @composer install --no-dev --no-interaction --prefer-dist --optimize-autoloader + @npm install --no-save && npm run production && npm prune --production update upgrade: # Update application dependencies @composer update && npm update && npm install @@ -17,3 +20,14 @@ tunnel: # Expose the application via secure tunnel clear-cache: # Clear the application cache @rm app/cache/* -rfv + +tar: # Generate tarball + @tar --verbose --create --gzip --exclude-vcs --exclude-vcs-ignores \ + --exclude app/cache/* --file artifacts/$(ARTIFACT_NAME).tar.gz \ + $(ARTIFACT_FILES) + +zip: # Generate zip file + @zip --exclude "app/cache/**" --exclude "*.git*" \ + --recurse-paths artifacts/$(ARTIFACT_NAME).zip $(ARTIFACT_FILES) + +artifacts: clear-cache production tar zip # Generate release artifacts diff --git a/artifacts/.gitignore b/artifacts/.gitignore new file mode 100644 index 0000000..d6b7ef3 --- /dev/null +++ b/artifacts/.gitignore @@ -0,0 +1,2 @@ +* +!.gitignore