Skip to content

Commit

Permalink
Merge pull request #105 from reactioncommerce/release-v3.0.0
Browse files Browse the repository at this point in the history
release v3.0.0
  • Loading branch information
kieckhafer authored Feb 6, 2020
2 parents 70301ad + d9781ba commit 96845fd
Show file tree
Hide file tree
Showing 4 changed files with 203 additions and 89 deletions.
17 changes: 17 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
@@ -1,3 +1,20 @@
# v3.0.0

This is the v3.0.0 release of `reaction-development-platform`. This project is designed to be quickest way to get started with the Reaction API and its supporting services in a local development environment.

*The following Reaction projects are being released one time in coordination as v3.0.0*

- [Reaction API](https://github.com/reactioncommerce/reaction)
- [Reaction Hydra](https://github.com/reactioncommerce/reaction-hydra)
- [Reaction Identity](https://github.com/reactioncommerce/reaction-identity)
- [Reaction Admin (beta)](https://github.com/reactioncommerce/reaction-admin)
- [Example Storefront](https://github.com/reactioncommerce/example-storefront)
- [Reaction Development Platform](https://github.com/reactioncommerce/reaction-development-platform)

*After this release, Reaction releases will no longer be coordinated across all projects - we'll release each project independently, as needed. This means version numbers will no longer be in sync. The newest versions of each project will work together.*

*This project, `reaction-development-platform`, will _always_ be updated when any other project is released to keep it in sync with the latest releases from all Reaction projects.*

# v2.9.1
This is patch version update coordinated with [Reaction](https://github.com/reactioncommerce/reaction), our [Example Storefront](https://github.com/reactioncommerce/example-storefront) and [reaction-hydra](https://github.com/reactioncommerce/reaction-hydra).

Expand Down
89 changes: 82 additions & 7 deletions Makefile
Original file line number Diff line number Diff line change
Expand Up @@ -38,26 +38,52 @@ all: init

###############################################################################
### Init-Project
### Initializes a project. Does not do common tasks shared between projects.
### Initializes a project in production mode.
### Does not do common tasks shared between projects.
###############################################################################
define init-template
init-$(1): $(1) network-create prebuild-$(1) build-$(1) post-build-$(1) start-$(1) post-project-start-$(1)
init-$(1): $(1) network-create dev-unlink-$(1) prebuild-$(1) build-$(1) post-build-$(1) start-$(1) post-project-start-$(1)
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call init-template,$(p))))

###############################################################################
### Init Project with System
### Init project and run the post-system hook script.
### Init-Dev-Project
### Initializes a project in development mode.
### Does not do common tasks shared between projects.
###############################################################################
define init-dev-template
init-dev-$(1): $(1) network-create dev-link-$(1) prebuild-$(1) build-$(1) post-build-$(1) start-$(1) post-project-start-$(1)
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call init-dev-template,$(p))))

###############################################################################
### Init-With-System
### Init project and run the post-system hook script. This is useful for
### initializing a single project.
### Assumes dependencies are already started.
###############################################################################
define init-with-system-template
init-with-system-$(1): init-$(1) post-system-start-$(1)
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call init-with-system-template,$(p))))

###############################################################################
### Init-Dev-with-System
### Init project and run the post-system hook script. This is useful for
### initializing a single project in development mode.
### Assumes dependencies are already started.
###############################################################################
define init-dev-with-system-template
init-dev-with-system-$(1): init-dev-$(1) post-system-start-$(1)
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call init-dev-with-system-template,$(p))))

.PHONY: init
init: $(foreach p,$(SUBPROJECTS),init-$(p)) post-system-start

.PHONY: init-dev
init-dev: $(foreach p,$(SUBPROJECTS),init-dev-$(p)) post-system-start

###############################################################################
### Targets to verify Github is configured correctly.
###############################################################################
Expand Down Expand Up @@ -142,7 +168,7 @@ clone: github-configured $(foreach p,$(SUBPROJECTS),$(p))
###############################################################################
define git-checkout-template
checkout-$(2): $(2)
cd $(2) && git checkout "$(3)"
cd $(2) && git fetch && git checkout "$(3)"
endef
$(foreach rr,$(SUBPROJECT_REPOS),$(eval $(call git-checkout-template,$(shell echo $(rr) | cut -d , -f 1),$(shell echo $(rr) | cut -d , -f 2),$(shell echo $(rr) | cut -d , -f 3))))

Expand Down Expand Up @@ -205,15 +231,64 @@ $(foreach p,$(SUBPROJECTS),$(eval $(call post-build-template,$(p))))
.PHONY: post-build
post-build: $(foreach p,$(SUBPROJECTS),post-build-$(p))

###############################################################################
### dev-unlink
### Removes the symlinks for docker-compose development
###############################################################################
define dev-unlink-template
dev-unlink-$(1):
@cd $(1) \
&& rm -f docker-compose.override.yml \
&& echo "Removed docker development symlink for $(1)"
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call dev-unlink-template,$(p))))

.PHONY: dev-unlink
dev-unlink: $(foreach p,$(SUBPROJECTS),dev-unlink-$(p))

###############################################################################
### dev-link
### Overrides default symlinks for `docker-compose` using `docker-compose.dev.yml`
###############################################################################
define dev-link-template
dev-link-$(1):
@if [ -e "$(1)/docker-compose.dev.yml" ]; then \
cd $(1) \
&& ln -sf docker-compose.dev.yml docker-compose.override.yml \
&& echo "Created docker development symlink for $(1)"; \
fi;
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call dev-link-template,$(p))))

.PHONY: dev-link
dev-link: $(foreach p,$(SUBPROJECTS),dev-link-$(p))

###############################################################################
### dev
### Starts services in development mode with
### `ln -s docker-compose.dev.yml docker-compose.override.yml; docker-compose up -d`
###############################################################################
define dev-template
dev-$(1): stop-$(1) dev-link-$(1) start-$(1)
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call dev-template,$(p))))

###############################################################################
### Start
### Starts services with `docker-compose up -d`
###
### Pull the specified image tags every time. Tags are constantly being updated
### to point to different image IDs, and there is less to debug if we can be
### reasonably to make sure that you're always starting the latest image with that tag.
###
### We are purposely running dc up even if dc pull fails. Our Meteor project DC
### config uses `image` as a desired image tag for `build` when in dev mode. But
### `dc pull` seems to have a bug where it doesn't treat it this way and tries
### to pull it.
###############################################################################
define start-template
start-$(1):
@cd $(1) \
&& docker-compose up -d
@cd $(1) && docker-compose pull; docker-compose up -d
endef
$(foreach p,$(SUBPROJECTS),$(eval $(call start-template,$(p))))

Expand Down
Loading

0 comments on commit 96845fd

Please sign in to comment.