Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fix controller ClusterRole file generation #363

Merged
merged 1 commit into from
Sep 9, 2022

Commits on Sep 9, 2022

  1. Fix controller ClusterRole file generation

    Recently we bumped `controller-tools` version to `v0.9.2` to support
    building controller with go1.19. This change sneakily impacted the
    `build-controller-release.sh` script, which caused our prow testing jobs
    to fail.
    
    To summarize the bug we can generate the `role.yaml` file using
    controller-gen `0.7.0` and `0.9.2` and inspect the differences:
    
    ```bash
    diff role-controller-gen0.9.2.yaml role-controller-gen0.7.0.yaml
    0a1
    >
    ```
    
    We can observe that the new line that used it be generated at the top of
    each file is no longer there, due to the fix introduced in 0.8.0 more
    precisely in kubernetes-sigs/controller-tools#626
    
    This change combined with the command `tail -n +8` in
    https://github.com/aws-controllers-k8s/code-generator/blob/v0.20.0/scripts/build-controller-release.sh#L237
    causes the script to cut an extra line which happens to be declaration
    of rules section in a controller ClusterRole manifest. Hence the error
    observed in the prow logs:
    
    ```bash
    Error: INSTALLATION FAILED: YAML parse error on emrcontainers-chart/templates/cluster-role-controller.yaml: error converting YAML to JSON: yaml: line 8: did not find expected key
    ```
    
    This patch fixes the `tail` command to properly cut the generated
    `role.yaml` file and avoid deleteng the `rules` section.
    a-hilaly committed Sep 9, 2022
    Configuration menu
    Copy the full SHA
    c3dcc6c View commit details
    Browse the repository at this point in the history