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

Portal configuration #2

Merged
merged 6 commits into from
Jul 13, 2022
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
1 change: 0 additions & 1 deletion README.md

This file was deleted.

56 changes: 56 additions & 0 deletions docs/README.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,56 @@
# PowerTools

At [Power Home Remodeling](https://powerhrg.com/), we have created foundational bits of code that we use to configure our applications, several of which are [cobra](https://cbra.info/)-based. We have packaged these individually inside a mono-repo to help engineers more easily maintain and consume them among our suite of applications, products and features.

## Packages 📦

power-tools currently contains the following packages (marked for release to rubygems 💎 or npm ☕️):

[nitro_config]() 💎
When included in a Rails application, NitroConfig loads the configuration file at `config/config.yml` within the application directory and makes its values available at `NitroConfig.config`. Config values are loaded based on the Rails environment, permitting the specification of multiple environments' configurations in a single file.

## Installation 🛠

These packages are all meant to install inside of an application and aren't intended to stand alone; currently, they are all published to [RubyGems](https://rubygems.org/) and you can use standard Bundler methods to install them.

```ruby=
# Gemfile

gem "nitro_config"
```

## Local Development 👩🏽‍💻

If a change needs to be made to a package, the easiest way to develop and test locally would be to temporarily change your Gemfile to point to your local version of the package:

```ruby=
# Gemfile

gem "nitro_config", path: "~/path/to/gems/nitro_config"
```

⚠️ <b>Please note</b> that such a change should never be committed, as other users would not have access to the same path your computer. ⚠️

## Testing 🔍

The expectation for these packages is that additions/modifications should be covered in the specs.

UI testing will be done by opening a PR/branch, and then opening a PR for a client application that points to the version on the corresponding branch.

```ruby=
# Gemfile

gem "nitro_config", github: "powerhome/nitro_config", branch: "example-branch-name"
```

## Release 🚀

Releases will be published according to [Semantic Versioning](https://semver.org/) and it is the responsibility of the consumers to keep their application dependencies up to date. We recommend leveraging [renovatebot](https://github.com/renovatebot/renovate) 🤖

## Maintenance 🚧

These packages are maintained by [Power's](https://github.com/powerhome) Heroes for Hire team.

## Contributing 💙

Contributions are welcome! Feel free to [open a ticket](https://github.com/powerhome/power-tools/issues/new) or a [PR](https://github.com/powerhome/power-tools/pulls).
8 changes: 8 additions & 0 deletions mkdocs.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
site_name: Power Tools
site_description: Packages for application configuration.
repo_url: https://github.com/powerhome/power-tools
edit_uri: edit/main/nitro_config/docs/
nav:
- 'Home': 'README.md'
plugins:
- techdocs-core
29 changes: 29 additions & 0 deletions portal.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,29 @@
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: power-tools
title: PowerTools
description: PowerTools packages for applications.
annotations:
backstage.io/techdocs-ref: dir:.
spec:
type: library
owner: heroes-for-hire
lifecycle: production
system: power-application-framework
xjunior marked this conversation as resolved.
Show resolved Hide resolved
---
apiVersion: backstage.io/v1alpha1
kind: Component
metadata:
name: nitro_config
title: Nitro Config
description: Easier configuration for cobra applications
annotations:
backstage.io/techdocs-ref: dir:nitro_config
spec:
type: library
owner: heroes-for-hire
lifecycle: production
subcomponentOf: power-tools
system: power-application-framework
8 changes: 8 additions & 0 deletions renovate.json
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
{
"extends": ["config:base", "group:allNonMajor"],
"lockFileMaintenance": {
"enabled": true
},
"labels": ["dependencies"],
"timezone": "America/New_York"
}