Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/dashaun-com/com.dashaun.service.gateway
Spring Cloud Gateway example using Testcontainers to validate GraalVM native image
https://github.com/dashaun-com/com.dashaun.service.gateway
graalvm-native-image spring-boot-3-0-0 spring-cloud-gateway testcontainers
Last synced: about 1 month ago
JSON representation
Spring Cloud Gateway example using Testcontainers to validate GraalVM native image
- Host: GitHub
- URL: https://github.com/dashaun-com/com.dashaun.service.gateway
- Owner: dashaun-com
- License: apache-2.0
- Created: 2022-03-29T12:31:23.000Z (almost 3 years ago)
- Default Branch: main
- Last Pushed: 2023-12-03T03:16:36.000Z (about 1 year ago)
- Last Synced: 2024-11-25T13:49:37.802Z (about 1 month ago)
- Topics: graalvm-native-image, spring-boot-3-0-0, spring-cloud-gateway, testcontainers
- Language: Java
- Homepage: https://dashaun.com/posts/spring-cloud-gateway-4-0-0-rc2-native-example-with-testcontainers/
- Size: 154 KB
- Stars: 11
- Watchers: 3
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
[![Contributors][contributors-shield]][contributors-url]
[![Forks][forks-shield]][forks-url]
[![Stargazers][stars-shield]][stars-url]
[![Issues][issues-shield]][issues-url]
[![License][license-shield]][license-url]# Spring Cloud Gateway and GraalVM native image example
[![arm64-native](https://circleci.com/gh/dashaun/dev.dashaun.service.gateway.svg?style=shield)](https://app.circleci.com/pipelines/github/dashaun/dev.dashaun.service.gateway) |
[![amd64-native](https://github.com/dashaun/dev.dashaun.service.gateway/actions/workflows/amd64-native.yml/badge.svg)](https://github.com/dashaun/dev.dashaun.service.gateway/actions/workflows/amd64-native.yml)- [Spring Boot Gateway](https://spring.io/projects/spring-cloud-gateway)
- [Spring Cloud 2022.0.1](https://spring.io/projects/spring-cloud)
- [Spring Boot 3.0.3](https://spring.io/projects/spring-boot)
- [Testcontainers](https://testcontainers.org)## | [Prerequisites](#prerequisites) | [Quick Start](#quick-start) | [Build Native Image](#build-native-image) | [Native Image Test](#native-image-test) | [See Also](#see-also) | [Contributing](#contributing) | [License](#license) |
## Prerequisites
- Java 17 or above
- [GraalVM](https://graalvm.org) 22.3 or above## Quick Start
```bash
git clone https://github.com/dashaun/dev.dashaun.service.gateway
cd dev.dashaun.service.gateway
./gradlew bootRun
```## Build Native Image
```bash
./gradlew bootBuildImage
```## Native Image Test
Uses [Testcontainers](https://testcontainers.org) to build a `native` image with [GraalVM](https://graalvm.org), and run tests against it.
```bash
./gradlew integrationTest
```## Multi-architecture buildpack
This repository uses [dashaun/java-native-builder-multiarch:7.4.1](https://hub.docker.com/r/dashaun/java-native-builder-multiarch)
which allows you to create `native` images for both AMD64 and ARM64 architectures.
I'm trying to take the `ARM64` support upstream to [Paketo](https://paketo.io), so any feedback you have from using this buildpack, with this project or any other is greatly appreciated!## See Also
- [Spring Cloud Gateway 4.0.0-rc2 native example with Testcontainers](https://dashaun.com/posts/spring-cloud-gateway-4-0-0-rc2-native-example-with-testcontainers/)
- [Cloud Native Buildpack for ARM64 and AMD64](https://dashaun.com/posts/java-native-builder-multiarch-7-41-0/)
- [First attempt at a multi-architecture buildpack](https://dashaun.com/posts/multiarch-builder-poc/)
- [K3s Knative Ubuntu Raspberry Pi](https://dashaun.com/posts/k3s-knative-ubuntu-raspberry-pi/)## Contributing
### Release
- git tag v#.#.#
- git push origin v#.#.#Pull-requests are welcomed!
## License
Distributed under the Apache License, Version 2.0. See `LICENSE` for more information.
[contributors-shield]: https://img.shields.io/github/contributors/dashaun/dev.dashaun.service.gateway.svg?style=for-the-badge
[contributors-url]: https://github.com/dashaun/dev.dashaun.service.gateway/graphs/contributors
[forks-shield]: https://img.shields.io/github/forks/dashaun/dev.dashaun.service.gateway.svg?style=for-the-badge
[forks-url]: https://github.com/dashaun/dev.dashaun.service.gateway/network/members
[stars-shield]: https://img.shields.io/github/stars/dashaun/dev.dashaun.service.gateway.svg?style=for-the-badge
[stars-url]: https://github.com/dashaun/dev.dashaun.service.gateway/stargazers
[issues-shield]: https://img.shields.io/github/issues/dashaun/dev.dashaun.service.gateway.svg?style=for-the-badge
[issues-url]: https://github.com/dashaun/dev.dashaun.service.gateway/issues
[license-shield]: https://img.shields.io/github/license/dashaun/dev.dashaun.service.gateway.svg?style=for-the-badge
[license-url]: https://github.com/dashaun/dev.dashaun.service.gateway/blob/master/LICENSE.txt