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

Add Kibana Dev Container #188887

Merged
merged 84 commits into from
Aug 26, 2024
Merged

Conversation

Ikuni17
Copy link
Contributor

@Ikuni17 Ikuni17 commented Jul 23, 2024

Summary

  • Closes elastic/kibana-operations#101

This PR adds a Dev Container to utilize for Kibana local development in an isolated environment. The original intention was to create a local environment for FIPS development because setting up Kibana in FIPS mode is complicated and has the potential to break the user's OS. However, it has been altered to allow for general development if an engineer chooses as well. The idea is for this be a cost efficient replacement for kibana-remote-dev eventually.

Testing

  • In VS Code you should be able to use the Dev Containers: Clone GitHub Pull Request in Named Container Volume... command from the Command Palette (F1) to easily test this PR.
  • See the docs for additional information on setting up the Dev Container.

Bazel

I tried many different solutions to copy the local Bazel cache into the container to speed up bootstrap, but it either would break Bazel or didn't provide any meaningful boost in performance. I opted to forgo keeping it in this PR due to the complexity and since we're planning to phase out Bazel in the future anyways.

@Ikuni17 Ikuni17 added release_note:skip Skip the PR/issue when compiling release notes backport:skip This commit does not require backporting v8.16.0 labels Jul 23, 2024
@Ikuni17 Ikuni17 self-assigned this Jul 23, 2024
@elasticmachine
Copy link
Contributor

Pinging @elastic/kibana-operations (Team:Operations)

Ikuni17 added a commit that referenced this pull request Aug 15, 2024
## Summary

Updates the Optimizer to user FIPS compliant algorithms, otherwise
Kibana will crash during startup in development mode. This was
originally part of #188887.
.github/dependabot.yml Outdated Show resolved Hide resolved
@Ikuni17 Ikuni17 added backport:current-major Backport to all previous minor branches and removed backport:skip This commit does not require backporting labels Aug 20, 2024
@kibana-ci
Copy link
Collaborator

💛 Build succeeded, but was flaky

Failed CI Steps

Metrics [docs]

✅ unchanged

History

To update your PR or re-run it, just comment with:
@elasticmachine merge upstream

cc @Ikuni17

@Ikuni17 Ikuni17 merged commit d07ffe2 into elastic:main Aug 26, 2024
34 checks passed
@Ikuni17 Ikuni17 deleted the chore/101/fips-dev-containers branch August 26, 2024 21:38
@kibanamachine
Copy link
Contributor

💔 All backports failed

Status Branch Result
8.15 Backport failed because of merge conflicts

Manual backport

To create the backport manually run:

node scripts/backport --pr 188887

Questions ?

Please refer to the Backport tool documentation

@Ikuni17
Copy link
Contributor Author

Ikuni17 commented Aug 27, 2024

💚 All backports created successfully

Status Branch Result
8.15

Note: Successful backport PRs will be merged automatically after passing CI.

Questions ?

Please refer to the Backport tool documentation

Ikuni17 added a commit to Ikuni17/kibana that referenced this pull request Aug 27, 2024
## Summary
- Closes elastic/kibana-operations#101

This PR adds a [Dev Container](https://containers.dev/) to utilize for
Kibana local development in an isolated environment. The original
intention was to create a local environment for FIPS development because
setting up Kibana in FIPS mode is complicated and has the potential to
break the user's OS. However, it has been altered to allow for general
development if an engineer chooses as well. The idea is for this be a
cost efficient replacement for
[kibana-remote-dev](https://github.com/elastic/kibana-remote-dev)
eventually.

### Testing
- In VS Code you should be able to use the `Dev Containers: Clone GitHub
Pull Request in Named Container Volume...` command from the Command
Palette (F1) to easily test this PR.
- See the
[docs](https://github.com/elastic/kibana/blob/bd125fc230f06848d62a564dc88d8abfb4f13e88/dev_docs/getting_started/setting_up_a_development_env.mdx#using-the-kibana-dev-container-optional)
for additional information on setting up the Dev Container.

### Bazel
I tried many different solutions to copy the local Bazel cache into the
container to speed up bootstrap, but it either would break Bazel or
didn't provide any meaningful boost in performance. I opted to forgo
keeping it in this PR due to the complexity and since we're planning to
phase out Bazel in the future anyways.

(cherry picked from commit d07ffe2)

# Conflicts:
#	.github/CODEOWNERS
#	.gitignore
#	renovate.json
@Ikuni17 Ikuni17 added backport:skip This commit does not require backporting and removed backport:current-major Backport to all previous minor branches labels Aug 27, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
backport:skip This commit does not require backporting release_note:skip Skip the PR/issue when compiling release notes Team:Operations Team label for Operations Team v8.16.0
Projects
None yet
Development

Successfully merging this pull request may close these issues.

5 participants