Repository: jupyterhub/zero-to-jupyterhub-k8s

Issue:
build.py corrupts yaml
## Description
I ran into an issue with entries in values.yaml file after using the build.py script. My `extraVolume` entries were corrupted.

## Reproduction

```yaml
# create this file and name it values.yaml
root-1:
  # offset=2 will indent the dash 2 spaces (default: 2)
  # sequence=4 will indent indent-status-2 4 spaces and ignore what offset is used (default: 2)
  - indent-status-1: ok
    indent-status-2: bad after ./test.py runs
root-2:
  # mapping=2 will indent the following entry 2 spaces (default: 2)
  name: old-name
```

```python
# create this runnable.py file, and run it
import os
from ruamel.yaml import YAML

def main():
    yaml = YAML()
    yaml.indent(mapping=2, offset=2, sequence=4)

    with open('values.yaml') as f:
        values = yaml.load(f)

    values['root-2'].update({'name': 'new-name'})

    with open('values.yaml', 'w') as f:
        yaml.dump(values, f)


main()
```

## Corrupt output

#### Look at `indent-status-2`, it has a indentation causing the yaml to become corrupt.
```yaml
# create this file and name it values.yaml
root-1:
  # offset=2 will indent the dash 2 spaces (default: 2)
  # sequence=4 will indent indent-status-2 4 spaces and ignore what offset is used (default: 2)
  - indent-status-1: ok
  indent-status-2: bad after ./test.py runs
root-2:
  # mapping=2 will indent the following entry 2 spaces (default: 2)
  name: new-name
```
build.py corrupts yaml
## Description
I ran into an issue with entries in values.yaml file after using the build.py script. My `extraVolume` entries were corrupted.

## Reproduction

```yaml
# create this file and name it values.yaml
root-1:
  # offset=2 will indent the dash 2 spaces (default: 2)
  # sequence=4 will indent indent-status-2 4 spaces and ignore what offset is used (default: 2)
  - indent-status-1: ok
    indent-status-2: bad after ./test.py runs
root-2:
  # mapping=2 will indent the following entry 2 spaces (default: 2)
  name: old-name
```

```python
# create this runnable.py file, and run it
import os
from ruamel.yaml import YAML

def main():
    yaml = YAML()
    yaml.indent(mapping=2, offset=2, sequence=4)

    with open('values.yaml') as f:
        values = yaml.load(f)

    values['root-2'].update({'name': 'new-name'})

    with open('values.yaml', 'w') as f:
        yaml.dump(values, f)


main()
```

## Corrupt output

#### Look at `indent-status-2`, it has a indentation causing the yaml to become corrupt.
```yaml
# create this file and name it values.yaml
root-1:
  # offset=2 will indent the dash 2 spaces (default: 2)
  # sequence=4 will indent indent-status-2 4 spaces and ignore what offset is used (default: 2)
  - indent-status-1: ok
  indent-status-2: bad after ./test.py runs
root-2:
  # mapping=2 will indent the following entry 2 spaces (default: 2)
  name: new-name
```


Discussion:

Resolving patch:
diff --git a/build.py b/build.py
--- a/build.py
+++ b/build.py
@@ -9,7 +9,7 @@
 
 # use safe roundtrip yaml loader
 yaml = YAML(typ='rt')
-yaml.indent(offset=2)
+yaml.indent(mapping=2, offset=2, sequence=4)
 
 def last_modified_commit(*paths, **kwargs):
     return subprocess.check_output([


Test patch: