https://github.com/sheldonhull/leapp-daemon
https://github.com/sheldonhull/leapp-daemon
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/sheldonhull/leapp-daemon
- Owner: sheldonhull
- License: mpl-2.0
- Created: 2021-07-02T02:58:53.000Z (almost 5 years ago)
- Default Branch: master
- Last Pushed: 2023-12-15T05:15:27.000Z (over 2 years ago)
- Last Synced: 2025-10-09T17:05:09.724Z (8 months ago)
- Homepage: https://www.leapp.cloud/
- Size: 11.7 MB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 6
-
Metadata Files:
- Readme: README.md
- Contributing: .github/CONTRIBUTING.md
- License: LICENSE
- Code of conduct: .github/CODE_OF_CONDUCT.md
Awesome Lists containing this project
README
Leapp Daemon
=========
- Website: https://www.leapp.cloud/
- Roadmap: [Roadmap](https://github.com/Noovolari/leapp/projects/4)
- Wiki: [Wiki](https://github.com/Noovolari/leapp/wiki)
- Chat with us: [Slack](https://join.slack.com/t/noovolari/shared_invite/zt-noc0ju05-18_GRX~Zi6Jz8~95j5CySA)

Leapp-daemon is the core Business logic of the [Leapp project](https://github.com/Noovolari/leapp).
The daemon is the engine designed to manage and secure cloud access in multi-account environments.
### FAQ
> :construction: The project is in active development to replace the current core logic of [Leapp](https://github.com/Noovolari/leapp)
> :call_me_hand: To jumpstart your contribution come to our [Slack](https://join.slack.com/t/noovolari/shared_invite/zt-noc0ju05-18_GRX~Zi6Jz8~95j5CySA) and have a chat with us; we will point you in the right direction.
> :arrow_down_small: If you wanted to download Leapp click [here to download the stable version](https://github.com/Noovolari/leapp)
# Contributing
Please read through our [contributing guidelines](.github/CONTRIBUTING.md) and [code of conduct](.github/CODE_OF_CONDUCT.md). We included directions
for opening issues, coding standards, and notes on development.
Editor preferences are available in the [editor config](.editorconfig) for easy use in common text editors. Read more and download plugins at [editorconfig.org](http://editorconfig.org).
# Developing
Development on leapp-daemon can be done on Mac, Windows, or Linux as long as you have Go installed. See the [go.mod](https://github.com/Noovolari/leapp-daemon/blob/master/go.mod) file located in the project root for the correct Go version.
## Quickstart
- Clone the repository with ```git clone https://github.com/Noovolari/leapp-daemon```
- Change directory into the project root
- Install dependencies with ```go get ./...```
- Run the server with ```go run main.go```
- Check the [good first issues](https://github.com/Noovolari/leapp-daemon/issues?q=is%3Aopen+is%3Aissue+label%3A%22good+first+issue%22)
## Basic functionality
Leapp-daemon is a set of REST APIs wrapped around an http client exposed on port 8080.
Main elements and entry-point
- The entry point is [main.go](https://github.com/Noovolari/leapp-daemon/blob/master/main.go) file located in the project root
- The [configuration](https://github.com/Noovolari/leapp-daemon/blob/616470d9e8d668dd067eb63cac2024a2b463f67a/core/configuration/configuration.go) represent the current state of the software
- The [http-engine](https://github.com/Noovolari/leapp-daemon/blob/616470d9e8d668dd067eb63cac2024a2b463f67a/api/engine/engine.go) to respond to API calls
- The websocket for enabling full-duplex communication against multiple consumers
- The [timer](https://github.com/Noovolari/leapp-daemon/blob/616470d9e8d668dd067eb63cac2024a2b463f67a/core/timer/timer.go) to auto-rotate credentials
Project Structure
- **api** - interfaces for interacting with core logic
- **core** - business logic
- **service** - middleware that serves as communication between api and core
## Testing
To test business logic you can use any API client like [Insomnia](https://insomnia.rest/) or [Postman](https://www.postman.com/).
# Logs
## Documentation
Here you can find our [documentation](https://github.com/Noovolari/leapp-daemon/wiki).
## Links
- [Roadmap](https://github.com/Noovolari/leapp/projects/4): view our next steps and stay up to date
- [Contributing](./.github/CONTRIBUTING.md): follow the guidelines if you'd like to contribute to the project
## License
[Mozilla Public License v2.0](https://github.com/Noovolari/leapp/blob/master/LICENSE)