Skip to content
Snippets Groups Projects
Commit ef1b3c7f authored by Carina Antunes's avatar Carina Antunes
Browse files

Pin image, add php configs

parent 0391a3ee
Branches
Tags 1.0.2
No related merge requests found
Showing
with 85 additions and 54 deletions
nameOverride=wordpress-app
wordpress.image=1.0.2
wordpress.image=1.0.3
wordpress.upgradeGracePeriodMinutes=10
wordpress.php.memoryLimit=128M
wordpress.php.uploadMaxFilesize=50M
supporters.egroup=wordpress-infra-supporters
supporters.clusterRole=wordpress-supporters
owner.clusterRole=wordpress-owner
......@@ -5,8 +5,11 @@ nameOverride: wordpress-app
# Spec for WordPress
wordpress:
image: 1.0.2
image: 1.0.3
upgradeGracePeriodMinutes: 10
php:
memoryLimit: 128M
uploadMaxFilesize: 50M
supporters:
egroup: wordpress-infra-supporters
......
nameOverride=wordpress-app
wordpress.image=1.0.2
wordpress.image=1.0.3
wordpress.upgradeGracePeriodMinutes=10
wordpress.php.memoryLimit=128M
wordpress.php.uploadMaxFilesize=50M
supporters.egroup=wordpress-infra-supporters
supporters.clusterRole=wordpress-supporters
owner.clusterRole=wordpress-owner
......@@ -531,8 +531,10 @@ apiVersion: v1
data:
config.properties: |
nameOverride=wordpress-app
wordpress.image=1.0.2
wordpress.image=1.0.3
wordpress.upgradeGracePeriodMinutes=10
wordpress.php.memoryLimit=128M
wordpress.php.uploadMaxFilesize=50M
supporters.egroup=wordpress-infra-supporters
supporters.clusterRole=wordpress-supporters
owner.clusterRole=wordpress-owner
......
......@@ -19,6 +19,12 @@ type Owner struct {
type WordPressValues struct {
Image string
UpgradeGracePeriodMinutes int
PHPValues
}
type PHPValues struct {
MemoryLimit string
UploadMaxFilesize string
}
type Config struct {
......@@ -43,6 +49,10 @@ func NewConfig(config viper.ConfigService) *Config {
WordPressValues: WordPressValues{
Image: getValue("wordpress.image"),
UpgradeGracePeriodMinutes: upgradeGracePeriodMinutes,
PHPValues: PHPValues{
MemoryLimit: getValue("wordpress.php.memoryLimit"),
UploadMaxFilesize: getValue("wordpress.php.uploadMaxFilesize"),
},
},
Supporters: Supporters{
Egroup: getValue("supporters.egroup"),
......
......@@ -20,11 +20,12 @@ const (
configFileNginx = "nginx-config.tmpl"
// Template keys
configSvcName = "WordPressSvcName"
configWpPortNumber = "WordPressSvcPort"
configNginxPort = "NginxSvcPort"
configWPHostnames = "WordPressHostnames"
configPrimaryHostname = "PrimaryHostname"
configSvcName = "WordPressSvcName"
configWpPortNumber = "WordPressSvcPort"
configNginxPort = "NginxSvcPort"
configWPHostnames = "WordPressHostnames"
configPrimaryHostname = "PrimaryHostname"
configClientMaxBodySizeName = "ClientMaxBodySize"
)
// WordPress configmap keys and values
......@@ -98,11 +99,12 @@ func (cm *ConfigMap) createWordPressConfigMap(
func (cm *ConfigMap) buildNginxConfigTmpl(wpServiceName, primaryHostname string, hostnames []string) string {
data := map[string]interface{}{
configSvcName: wpServiceName,
configWpPortNumber: wordPressPort,
configNginxPort: nginxPort,
configWPHostnames: hostnames,
configPrimaryHostname: primaryHostname,
configSvcName: wpServiceName,
configWpPortNumber: wordPressPort,
configNginxPort: nginxPort,
configWPHostnames: hostnames,
configPrimaryHostname: primaryHostname,
configClientMaxBodySizeName: cm.config.UploadMaxFilesize,
}
return cm.templates.BuildTmplTxt(configFileNginx, data)
......
......@@ -73,7 +73,7 @@ func (c *CronJob) createBackupCronJob(wp *types.WordPress) *CronJob {
backupCronContainer,
GetWordpressImage(wp, c.config),
command,
getWordpressEnvVars(wp),
getWordpressEnvVars(wp, c.config),
volumeMounts,
volumes,
fmt.Sprintf("%d", wp.Generation),
......
......@@ -31,7 +31,7 @@ func (c *CronJob) createWPCronJob(wp *types.WordPress) *CronJob {
wpCronContainer,
GetWordpressImage(wp, c.config),
strings.Split(wpCronCommand, " "),
getWordpressEnvVars(wp),
getWordpressEnvVars(wp, c.config),
getWordpressVolumeMounts(),
getWordpressVolumes(wpFullName),
fmt.Sprintf("%d", wp.Generation),
......
......@@ -300,7 +300,7 @@ func (d *Deployment) createWordPressDeployment(wp *types.WordPress) *Deployment
d.getWordpressResources(wp),
getWordpressReadinessProbe(),
getWordpressLivenessProbe(),
getWordpressEnvVars(wp),
getWordpressEnvVars(wp, d.config),
getWordpressVolumes(wpFullName),
getWordpressVolumeMounts(),
)
......@@ -338,12 +338,13 @@ func (d *Deployment) GetAll(wp *types.WordPress) []Resource {
return resources
}
func getWordpressEnvVars(wp *types.WordPress) []corev1.EnvVar {
func getWordpressEnvVars(wp *types.WordPress, config *config.Config) []corev1.EnvVar {
wpFullName := GenerateWordPressFullName(wp.Name)
return []corev1.EnvVar{
{Name: flagFile.String(), Value: installedFlagFileLocation},
{Name: wordpressPHPMemoryLimit.String(), Value: wp.Spec.WordPressSpec.Resources.Requests.Memory().AsDec().String()},
{Name: wordpressPHPMemoryLimit.String(), Value: config.MemoryLimit},
{Name: wordpressUploadMaxFilesize.String(), Value: config.WordPressValues.UploadMaxFilesize},
*secretEnvVar(mysqlUser, dbUserKey, retrieveDatabaseSecretName(wpFullName)),
*secretEnvVar(mysqlDatabase, dbNameKey, retrieveDatabaseSecretName(wpFullName)),
*secretEnvVar(mysqlPassword, dbPassKey, retrieveDatabaseSecretName(wpFullName)),
......
......@@ -117,7 +117,7 @@ func (j *Job) GetAll(wp *types.WordPress) []Resource {
wpJobName,
GetWordpressImage(wp, j.config),
installJobTimeoutSeconds,
getWordpressEnvVars(wp),
getWordpressEnvVars(wp, j.config),
j.getResourceRequirements(wp),
getWordpressVolumes(wpFullName),
getWordpressVolumeMounts(),
......
......@@ -5,25 +5,26 @@ type PodEnv int
// Pod Environment Variables (used in deployment and cronjob)
const (
mysqlHost PodEnv = iota // MYSQL_HOST
mysqlPort // MYSQL_PORT
mysqlDatabase // MYSQL_DATABASE
mysqlUser // MYSQL_USER
mysqlPassword // MYSQL_PASSWORD
mysqlRootPassword // MYSQL_ROOT_PASSWORD
mysqlTablePrefix // MYSQL_TABLE_PREFIX
adminEmail // ADMIN_EMAIL
adminPassword // ADMIN_PASSWORD
applicationName // APPLICATION_NAME
oidcClientID // OIDC_CLIENT_ID
oidcClientSecret // OIDC_CLIENT_SECRET
authzAPIEndpoint // AUTHZ_API_ENDPOINT
oauth2ProxyClientID // OAUTH2_PROXY_CLIENT_ID
oauth2ProxyClientSecret // OAUTH2_PROXY_CLIENT_SECRET
oauth2ProxyOIDCIssuerURL // OAUTH2_PROXY_OIDC_ISSUER_URL
oauth2ProxyCookieSecret // OAUTH2_PROXY_COOKIE_SECRET
flagFile // FLAG_FILE
wordpressPHPMemoryLimit // PHP_MEMORY_LIMIT
mysqlHost PodEnv = iota // MYSQL_HOST
mysqlPort // MYSQL_PORT
mysqlDatabase // MYSQL_DATABASE
mysqlUser // MYSQL_USER
mysqlPassword // MYSQL_PASSWORD
mysqlRootPassword // MYSQL_ROOT_PASSWORD
mysqlTablePrefix // MYSQL_TABLE_PREFIX
adminEmail // ADMIN_EMAIL
adminPassword // ADMIN_PASSWORD
applicationName // APPLICATION_NAME
oidcClientID // OIDC_CLIENT_ID
oidcClientSecret // OIDC_CLIENT_SECRET
authzAPIEndpoint // AUTHZ_API_ENDPOINT
oauth2ProxyClientID // OAUTH2_PROXY_CLIENT_ID
oauth2ProxyClientSecret // OAUTH2_PROXY_CLIENT_SECRET
oauth2ProxyOIDCIssuerURL // OAUTH2_PROXY_OIDC_ISSUER_URL
oauth2ProxyCookieSecret // OAUTH2_PROXY_COOKIE_SECRET
flagFile // FLAG_FILE
wordpressPHPMemoryLimit // PHP_MEMORY_LIMIT
wordpressUploadMaxFilesize // UPLOAD_MAX_FILESIZE
// SSO Proxy configuration
oauth2ProxyHTTPAddressKey // OAUTH2_PROXY_HTTP_ADDRESS
......
......@@ -27,23 +27,24 @@ func _() {
_ = x[oauth2ProxyCookieSecret-16]
_ = x[flagFile-17]
_ = x[wordpressPHPMemoryLimit-18]
_ = x[oauth2ProxyHTTPAddressKey-19]
_ = x[oauth2ProxyOIDCGroupsClaim-20]
_ = x[oauth2ProxyAllowedGroups-21]
_ = x[oauth2ProxyProvider-22]
_ = x[oauth2ProxyScope-23]
_ = x[oauth2ProxyReverseProxy-24]
_ = x[oauth2ProxyUpstreams-25]
_ = x[oauth2ProxyEmailDomains-26]
_ = x[oauth2ProxyWhitelistDomains-27]
_ = x[oauth2ProxyCookiePath-28]
_ = x[oauth2ProxySilencePingLogging-29]
_ = x[oauth2ProxySkipProviderButton-30]
_ = x[wordpressUploadMaxFilesize-19]
_ = x[oauth2ProxyHTTPAddressKey-20]
_ = x[oauth2ProxyOIDCGroupsClaim-21]
_ = x[oauth2ProxyAllowedGroups-22]
_ = x[oauth2ProxyProvider-23]
_ = x[oauth2ProxyScope-24]
_ = x[oauth2ProxyReverseProxy-25]
_ = x[oauth2ProxyUpstreams-26]
_ = x[oauth2ProxyEmailDomains-27]
_ = x[oauth2ProxyWhitelistDomains-28]
_ = x[oauth2ProxyCookiePath-29]
_ = x[oauth2ProxySilencePingLogging-30]
_ = x[oauth2ProxySkipProviderButton-31]
}
const _PodEnv_name = "MYSQL_HOSTMYSQL_PORTMYSQL_DATABASEMYSQL_USERMYSQL_PASSWORDMYSQL_ROOT_PASSWORDMYSQL_TABLE_PREFIXADMIN_EMAILADMIN_PASSWORDAPPLICATION_NAMEOIDC_CLIENT_IDOIDC_CLIENT_SECRETAUTHZ_API_ENDPOINTOAUTH2_PROXY_CLIENT_IDOAUTH2_PROXY_CLIENT_SECRETOAUTH2_PROXY_OIDC_ISSUER_URLOAUTH2_PROXY_COOKIE_SECRETFLAG_FILEPHP_MEMORY_LIMITOAUTH2_PROXY_HTTP_ADDRESSOAUTH2_PROXY_OIDC_GROUPS_CLAIMOAUTH2_PROXY_ALLOWED_GROUPSOAUTH2_PROXY_PROVIDEROAUTH2_PROXY_SCOPEOAUTH2_PROXY_REVERSE_PROXYOAUTH2_PROXY_UPSTREAMSOAUTH2_PROXY_EMAIL_DOMAINSOAUTH2_PROXY_WHITELIST_DOMAINSOAUTH2_PROXY_COOKIE_PATHOAUTH2_PROXY_SILENCE_PING_LOGGINGOAUTH2_PROXY_SKIP_PROVIDER_BUTTON"
const _PodEnv_name = "MYSQL_HOSTMYSQL_PORTMYSQL_DATABASEMYSQL_USERMYSQL_PASSWORDMYSQL_ROOT_PASSWORDMYSQL_TABLE_PREFIXADMIN_EMAILADMIN_PASSWORDAPPLICATION_NAMEOIDC_CLIENT_IDOIDC_CLIENT_SECRETAUTHZ_API_ENDPOINTOAUTH2_PROXY_CLIENT_IDOAUTH2_PROXY_CLIENT_SECRETOAUTH2_PROXY_OIDC_ISSUER_URLOAUTH2_PROXY_COOKIE_SECRETFLAG_FILEPHP_MEMORY_LIMITUPLOAD_MAX_FILESIZEOAUTH2_PROXY_HTTP_ADDRESSOAUTH2_PROXY_OIDC_GROUPS_CLAIMOAUTH2_PROXY_ALLOWED_GROUPSOAUTH2_PROXY_PROVIDEROAUTH2_PROXY_SCOPEOAUTH2_PROXY_REVERSE_PROXYOAUTH2_PROXY_UPSTREAMSOAUTH2_PROXY_EMAIL_DOMAINSOAUTH2_PROXY_WHITELIST_DOMAINSOAUTH2_PROXY_COOKIE_PATHOAUTH2_PROXY_SILENCE_PING_LOGGINGOAUTH2_PROXY_SKIP_PROVIDER_BUTTON"
var _PodEnv_index = [...]uint16{0, 10, 20, 34, 44, 58, 77, 95, 106, 120, 136, 150, 168, 186, 208, 234, 262, 288, 297, 313, 338, 368, 395, 416, 434, 460, 482, 508, 538, 562, 595, 628}
var _PodEnv_index = [...]uint16{0, 10, 20, 34, 44, 58, 77, 95, 106, 120, 136, 150, 168, 186, 208, 234, 262, 288, 297, 313, 332, 357, 387, 414, 435, 453, 479, 501, 527, 557, 581, 614, 647}
func (i PodEnv) String() string {
if i < 0 || i >= PodEnv(len(_PodEnv_index)-1) {
......
......@@ -4,6 +4,8 @@ gzip_proxied any;
gzip_comp_level 6;
gzip_types text/plain text/css text/xml application/json application/javascript application/xml+rss application/atom+xml image/svg+xml;
client_max_body_size {{.ClientMaxBodySize}};
upstream wordpress {
server {{.WordPressSvcName}}:{{.WordPressSvcPort}} max_conns=300;
}
......
......@@ -9,6 +9,8 @@ data:
nameOverride={{ .Values.config.configProperties.nameOverride | quote }}
wordpress.image={{ .Values.config.configProperties.wordpress.image | quote }}
wordpress.upgradeGracePeriodMinutes={{ .Values.config.configProperties.wordpress.upgradeGracePeriodMinutes | quote }}
wordpress.php.memoryLimit={{ .Values.config.configProperties.wordpress.php.memoryLimit | quote }}
wordpress.php.uploadMaxFilesize={{ .Values.config.configProperties.wordpress.php.uploadMaxFilesize | quote }}
supporters.egroup={{ .Values.config.configProperties.supporters.egroup | quote }}
supporters.clusterRole={{ .Values.config.configProperties.supporters.clusterRole | quote }}
owner.clusterRole={{ .Values.config.configProperties.owner.clusterRole | quote }}
\ No newline at end of file
......@@ -7,7 +7,10 @@ config:
clusterRole: wordpress-supporters
egroup: wordpress-infra-supporters
wordpress:
image: 1.0.2
image: 1.0.3
php:
memoryLimit: 128M
uploadMaxFilesize: 50M
upgradeGracePeriodMinutes: "10"
controllerManager:
kubeRbacProxy:
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment