apache / apache/openserverless

implement (in golang) a configurator tool [alessandro sanino]

Open
#136 0 comments 0 reactions 0 assignees View on GitHub
Dominant language
Python
Stars
576
Forks
29
Avg merge
50m
Merged PRs (30d)
13

Description

## Why you need it?

THere are many interactive configurators in ops: for example `ops cloud eks config`
They are implemented in task language but it is not ideal.
It would be better to provide a tool for it

## How it could be?
a tool in go doing ops -configurator description.json

where the descriptor can be like:

```
[{
"name": "WHI",
"label": "Why do you recommend Apache OpenServerless?",
"type": "textarea",
"required": "true"
}, {
"name": "JOB",
"label": "What is your job role?",
"type": "text",
"required": "true"
}, {
"name": "TONE",
"label": "What tone should the post have?",
"type": "text",
"required": "true"
}]
```

executing the configurator it will ask for the values and store then as configuration variables.

# Form Field: a dictionary
- `label`: the description
- `name`: the field used in the input
- `required`: is it required?
- `type`: can be `text`, `textarea`, `checkbox`, `radio`, `file`
- if `radio`:
- `options`: array of options
- if `file`:
- upload a (small!) file in base64

# CRD support

it is important that the configurator will be able to save the configuration as a CRD so you can put it in a kubernetes cluster and able to read them back as environment variables from a crd

## Other related information
Add any other context or screenshots about the feature request here.

Contributor guide

Open the contributing guide

Research direction

No source files or tests are named. Start by locating the existing task-language configurators behind `ops cloud eks config`, then review the proposed `ops -configurator description.json` entry point and descriptor fields. Done should cover interactive values for the listed field types, configuration-variable storage, and saving and reading the configuration as a Kubernetes CRD.

Written by the indexing model from the issue text.

Assessment

Tech stack
go, kubernetes
Domain
cli, devops
Issue type
Feature
Difficulty
5/5
Estimated time
Over a week
Activity status
Stale
Clarity
Needs clarification
Newbie friendliness
25/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.