SQL Server 2017 Linux HELM Chart#3246
SQL Server 2017 Linux HELM Chart#3246k8s-ci-robot merged 16 commits intohelm:masterfrom thomasliddledba:mssqldevelop
Conversation
|
/assign @foxish |
|
/approve |
|
Note - I read through issues #1085 and #1733. I'm hoping for another review. With GA now for SQL Server 2017 on Linux, this charts Prerequisites to change the EULA value, and the charts default to Express, there would be another review and acceptance. I believe there is value in a chart for SQL Server 2017 for the community. |
|
Any update on this PR? |
incubator/mssql-linux/README.md
Outdated
| $ echo -n "<MyNewStrongSaPassword>"| base64 | ||
| $ <base 64 output> | ||
| ``` | ||
| 3. Copy the Base64 output in step 2 into the templates/secret.yaml in the `password` field |
There was a problem hiding this comment.
We can do this in the templating similar to https://github.com/kubernetes/charts/blob/master/stable/mysql/templates/secrets.yaml
There was a problem hiding this comment.
This was a great idea. I added this to the commit.
incubator/mssql-linux/README.md
Outdated
| # HELM Chart for Microsoft SQL Server 2017 on Linux | ||
|
|
||
| ## Prerequisites | ||
| * This chart requires Docker Engine 1.8+ in any of their supported platforms. |
There was a problem hiding this comment.
This is a bit atypical - why does it have a docker engine version dependency?
There was a problem hiding this comment.
There was a prerequisite in the SQL Server documentation for 1.8 or higher. I updated the README file with a link to the documentation.
incubator/mssql-linux/README.md
Outdated
| ``` | ||
|
|
||
| ## Values | ||
| The configuration parameters in this section control the resources requested and utilized by the ZooKeeper ensemble. |
incubator/mssql-linux/README.md
Outdated
| | type | Service Type | ClusterIP | | ||
| | externalPort | External Port | 1433 | | ||
| | internalPort | Internal Port | 1433 | | ||
| | livenessprobe | | | |
There was a problem hiding this comment.
Either liveness and readiness probes should be separate tables, or the parameters should be described as livenessprobe.initialDelaySeconds and so on.
There was a problem hiding this comment.
Fixed. I put this in it's own table(s)
incubator/mssql-linux/README.md
Outdated
| | periodSeconds | Field specifies that the kubelet should perform a liveness probe every XX second(s) | 10 | | ||
|
|
||
| ## Resources | ||
| Typically don't recommend specifying default resources and to leave this as a conscious |
There was a problem hiding this comment.
Please rephrase this - if it's intended towards the user, it can be "You don't typically need to specify..."
incubator/mssql-linux/README.md
Outdated
| lines, adjust them as necessary, and remove the curly braces after 'resources:'. | ||
|
|
||
| The defaults are set for local development purposes. | ||
| ```yaml |
There was a problem hiding this comment.
Can you elaborate on what to put as a template? It's not clear on the comment. Thanks.
|
/ok-to-test |
|
@lachie83 - I'm sure your busy but would you be able to review this PR for approval? |
| @@ -0,0 +1,49 @@ | |||
| apiVersion: extensions/v1beta1 | |||
There was a problem hiding this comment.
Thanks for the review. Fixed
| heritage: {{ .Release.Service }} | ||
| type: Opaque | ||
| data: | ||
| password: {{ randAlphaNum 15 | b64enc | quote }} |
There was a problem hiding this comment.
Please provide an option to explicitly set the password and only auto-generate it if not set.
There was a problem hiding this comment.
Thanks for the review. Added
| chart: {{ .Chart.Name }}-{{ .Chart.Version | replace "+" "_" }} | ||
| release: {{ .Release.Name }} | ||
| heritage: {{ .Release.Service }} | ||
| spec: |
There was a problem hiding this comment.
Thanks for the review. Fixed
|
@unguiculus - Thanks for the review. The updates have been made. Thanks everyone! |
|
@unguiculus & @lachie83 any chance for a review? |
|
@foxish is there anything else I can provide you based on your last review? |
unguiculus
left a comment
There was a problem hiding this comment.
A few more things. If you like you can directly move it to stable.
| You can specify the resource limits for this chart in the values.yaml file. | ||
| Example: | ||
| ```yaml | ||
| resources: |
There was a problem hiding this comment.
Thanks. Fixed
| name: {{ template "mssql.fullname" . }}-secret | ||
| key: sapassword | ||
| ports: | ||
| - containerPort: {{ .Values.service.internalPort }} |
There was a problem hiding this comment.
You should probably hard-code the port. Changing the port will break the chart. Give it a name and use that to reference it from service and probes.
There was a problem hiding this comment.
Thanks. Fixed
incubator/mssql-linux/values.yaml
Outdated
| @@ -0,0 +1,29 @@ | |||
| ACCEPT_EULA: | |||
There was a problem hiding this comment.
Values should be camel case and start with a lower case letter.
There was a problem hiding this comment.
Thanks. Fixed
incubator/mssql-linux/values.yaml
Outdated
| # sapassword: "MyStrongPassword1234" | ||
| image: | ||
| repository: microsoft/mssql-server-linux | ||
| tag: latest |
There was a problem hiding this comment.
Thanks. Fixed
|
@unguiculus - Thanks for the review. I've corrected those fixes. Any other suggestions would be great. Thanks again. |
|
/assign @lachie83 |
unguiculus
left a comment
There was a problem hiding this comment.
Looks pretty good. Just a few more things. I'd suggest you move it to stable before we merge it.
| - port: 1433 | ||
| targetPort: 1433 | ||
| protocol: TCP | ||
| name: {{ .Values.service.name }} |
There was a problem hiding this comment.
This is not the service name, it's the port name. It probably doesn't make sense to make it configurable. I'd just hardcode it.
There was a problem hiding this comment.
I went ahead and removed this all together.
| name: {{ template "mssql.fullname" . }}-secret | ||
| key: sapassword | ||
| ports: | ||
| - containerPort: 1433 |
There was a problem hiding this comment.
Give the port a name and reference it for configuring probes.
There was a problem hiding this comment.
Thanks. I've updated the port with a name and referenced it in the probes.
| type: {{ .Values.service.type }} | ||
| ports: | ||
| - port: 1433 | ||
| targetPort: 1433 |
There was a problem hiding this comment.
Reference the target port via name (see above).
There was a problem hiding this comment.
Done. Thanks
|
/ok-to-test |
|
@unguiculus - Thanks again - also moved to stable. |
stable/mssql-linux/README.md
Outdated
| ```console | ||
| $ helm repo add incubator http://storage.googleapis.com/kubernetes-charts-incubator | ||
| $ helm install --name mymssql incubator/mssql-linux --set acceptEula.value=Y --set edition.value=Developer | ||
| $ helm repo add stable https://kubernetes-charts.storage.googleapis.com/ |
There was a problem hiding this comment.
No need to add the stable repo.
There was a problem hiding this comment.
Fixed. Thanks
|
/retest |
|
/lgtm |
|
[APPROVALNOTIFIER] This PR is APPROVED This pull-request has been approved by: thomasliddledba, unguiculus The full list of commands accepted by this bot can be found here. DetailsNeeds approval from an approver in each of these OWNERS Files:
You can indicate your approval by writing |
Adding a SQL Server 2017 Linux HELM Chart to the incubator.