-
Notifications
You must be signed in to change notification settings - Fork 0
Expand file tree
/
Copy pathmodule.mk
More file actions
101 lines (82 loc) · 2.47 KB
/
module.mk
File metadata and controls
101 lines (82 loc) · 2.47 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
# Directory where this makefile-ci was installed
MAKEFILE_CI_DIR := $(dir $(dir $(lastword $(MAKEFILE_LIST))))
# Directory containing makefile-ci sources (*.mk)
MAKEFILE_CI_SRC := $(MAKEFILE_CI_DIR)src
# Directory containing binaries used by makefiles
MAKEFILE_CI_BIN := $(MAKEFILE_CI_DIR)bin
# Directory containing template files used by makefiles
MAKEFILE_CI_TEMPLATE := $(MAKEFILE_CI_DIR)template
# Features detection
## DotEnv feature enabled
DOTENV_ENABLED ?= true
ifneq ($(wildcard .tool-versions),)
## ASDF feature enabled
ASDF_ENABLED ?= true
endif
ifneq ($(wildcard Dockerfile),)
## Docker feature enabled
DOCKER_ENABLED ?= true
endif
ifneq ($(wildcard .devcontainer),)
## DevContainer feature enabled
DEVCONTAINER_ENABLED ?= true
endif
ifneq ($(wildcard package.json),)
## NodeJS feature enabled
NODEJS_ENABLED ?= true
endif
ifneq ($(wildcard Gemfile),)
## Ruby feature enabled
RUBY_ENABLED ?= true
endif
## Enable Scalingo deployment
SCALINGO_ENABLED ?= false
## Enable Heroku deployment
HEROKU_ENABLED ?= false
# Enable xeol by default
XEOL_ENABLED ?= true
# ifneq ($(wildcard .xeol.yaml .xeol/config.yaml),)
# ## Enable xeol scanner
# XEOL_ENABLED ?= false
# endif
# Include variables
include $(MAKEFILE_CI_SRC)/functions.mk
include $(MAKEFILE_CI_SRC)/variables.mk
# Include workflow
include $(MAKEFILE_CI_SRC)/workflow.mk
# Include each module
include $(MAKEFILE_CI_SRC)/cache.mk
include $(MAKEFILE_CI_SRC)/pid.mk
include $(MAKEFILE_CI_SRC)/version.mk
include $(MAKEFILE_CI_SRC)/build-info.mk
include $(MAKEFILE_CI_SRC)/template.mk
include $(MAKEFILE_CI_SRC)/dotenv.mk
ifneq ($(call filter-false,$(DOCKER_ENABLED)),)
include $(MAKEFILE_CI_SRC)/docker.mk
include $(MAKEFILE_CI_SRC)/docker-compose.mk
endif
ifneq ($(call filter-false,$(DEVCONTAINER_ENABLED)),)
include $(MAKEFILE_CI_SRC)/devcontainer.mk
endif
include $(MAKEFILE_CI_SRC)/githooks.mk
ifneq ($(call filter-false,$(NODEJS_ENABLED)),)
include $(MAKEFILE_CI_SRC)/node.mk
endif
ifneq ($(call filter-false,$(RUBY_ENABLED)),)
include $(MAKEFILE_CI_SRC)/ruby.mk
endif
ifneq ($(call filter-false,$(COCOAPODS_ENABLED)),)
include $(MAKEFILE_CI_SRC)/cocoapods.mk
endif
ifneq ($(call filter-false,$(SCALINGO_ENABLED)),)
include $(MAKEFILE_CI_SRC)/scalingo.mk
endif
ifneq ($(call filter-false,$(HEROKU_ENABLED)),)
include $(MAKEFILE_CI_SRC)/heroku.mk
endif
ifneq ($(call filter-false,$(XEOL_ENABLED)),)
include $(MAKEFILE_CI_SRC)/xeol.mk
endif
# End of all declarations
# Export all CI_VARIABLES
$(foreach var,$(CI_VARIABLES),$(eval export $(var)))