giseldo/neodataset huggingface dataset:
Adjust pagination color scheme on darkmode

### Summary

When showing pagination for tables on the web console, if darkmode is enabled, the color scheme makes text hard to read.

![image](/uploads/90888402baea647be239b857354ec748/image.png)


#### Steps to reproduce

- Enter the web console
- Enable darkmode by clicking on the color scheme icon on the topbar
- Load any component with enough records to show pagination
- The text on the pagination will be hard to read


### Expected Behaviour

Text should be completely legible


### Environment

- StackGres version: `1.3.0-SNAPSHOT`

Story points: 2.0
Hide empty sections on Summaries

### Summary
Titles of empty sections are shown on some Summaries.

#### Steps to reproduce
1. Go to Create Object Storage.
2. Give it a name.
3. Open the Summary.
4. On the Summary, the `Type` section is shown but it's empty.

### Expected Behaviour
Empty sections should not be shown.

### Environment
- StackGres version: 1\.2.0

### Relevant logs and/or screenshots
![Screenshot_2022-07-20_at_11.08.44](/uploads/de41a594c7a39bd6ecbed4a5a0dcf66b/Screenshot_2022-07-20_at_11.08.44.png)

Story points: 4.0
Misplaced warning icons on cluster tabs

### Summary
Some warning icons appear misplaced on cluster tabs.

### Environment
- StackGres version: 1\.2.0

### Relevant logs and/or screenshots
![image__1_](/uploads/6697fd091a132b5f1d2189b28e249bc7/image__1_.png)
![image](/uploads/dd974525e391f4b247daee1e7cb745de/image.png)

Story points: 2.0
fix the helm command adding the missing flag on this scenario

Looking over your helm installation page, image attached, and wondering why when selecting the Customized parameters tab, the helm command does not include --create-namespace This would create the chosen custom namespace and not fail if it's already there.

 This adjustment would make the user experience a bit easier. 

![Screenshot_from_2022-07-12_17-41-48](/uploads/099ce6635bf9347b089b4a620241d721/Screenshot_from_2022-07-12_17-41-48.png)

**Acceptance criteria:**
- [ ] add the `--create-namespace` in the helm command

Story points: 1.0
Support SGInstanceProfile and SGPostgresConfig on Distributed Logs on the Web Console

The web console should allow applying SGInstanceProfile and SGPostgresConfig to Distributed Logs.

## Acceptance Criteria:
- [x] Support adding SGInstanceProfile and SGPostgresConfig to Distributed Logs.
- [x] List SGInstanceProfile and SGPostgresConfig on Distributed Logs Summary.
- [x] List SGInstanceProfile and SGPostgresConfig on Distributed Logs Details.
- [x] Test the implementation.

Story points: 8.0
Review web console interceptors to REST API responses

### Summary

On the web console, when processing REST API responses, there are several interceptors set with generic messages depending on the response code comming from the REST API. In some cases, this may cause for the error notification to be shown several times.

Such is the case when trying to edit/update a cluster when there's an SGDbOp running for it.

![image](/uploads/afa147eb8af810b63d19b28af65e92eb/image.png)


### Expected Behaviour

Notification messages for REST API responses should only appear once. We should review such interceptors and the notifications engine, in order to avoid repeated messages.

### Environment

- StackGres version: `1.2.0`

Story points: 8.0
Managed backups specs not loading on SGCluster form

### Summary

When creating a cluster on the web console, the fields won't load because of a typo on the code.


#### Steps to reproduce

- Enter the web console
- Go to the "Create Cluster" form
- Click on the "Backups" step
- Toggle the "Managed Backups" switch
- Nothing happens and the following error appears on the browser's console

![image](/uploads/b6ae7fbf7ae5674edf9c6c22667ecf4d/image.png)


### Expected Behaviour

Backup specs should load properly when enabled

### Environment

- StackGres version: `1.3.0-SNNAPSHOT`

Story points: 2.0
Proposed default names contain non-valid characters

### Summary
When trying to create a Backup or DbOp, a default name is proposed. The default name contains non-valid character and the creation fails.

#### Steps to reproduce
1. Go to Backups form.
2. The proposed default name contains non-valid characters (`:`).

### Expected Behaviour
Colons should be replace by dashes. 

### Environment

- StackGres version: 1\.2.0

### Relevant logs and/or screenshots

Story points: 4.0
Improve web console homepage when there are no namespaces in use

### Summary

The homepage for the web console shows a set of cards associated to those namespaces with at least one resource in them. If there are no resources created in any namespace, the homepage just shows a "Used Namespaces" title.

![image](/uploads/6ef8af9e6b1e67a50cbc8f9193b2b21e/image.png)


#### Steps to reproduce

- Enter the web console
- Make sure there are no resources in any namespace
- No cards are shown but the "Used Namespaces" still appears



### Environment

- StackGres version: `1.2.0`

Story points: 4.0
NodeSelector and NodeAffinity for Backups, DistributedLogs and SGDbOps

### Problem to solve

Currently on StackGres is possible to use NodeSelect and NodeAffinity for Backups, DistributedLogs, and SGDbOps!

### Proposal

Please add `NodeSelector` and `NodeAffinity` capability for Backup, DistributedLogs and SGDbOps.

DistributedLogs:
```yaml
scheduling:
  nodeAffinity:
    preferredDuringSchedulingIgnoredDuringExecution:
      - weight:
        preference:
          matchExpressions:
            - key:
              operator: 
              values:
          matchFields:
            - key:
              operator: 
              values:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        matchExpressions:
          - key:
            operator: 
            values:
        matchFields:
          - key:
            operator: 
            values:
```

SGDbOps:
```yaml
scheduling:
  nodeSelector:
    type:
  nodeAffinity:
    preferredDuringSchedulingIgnoredDuringExecution:
      - weight:
        preference:
          matchExpressions:
            - key:
              operator: 
              values:
          matchFields:
            - key:
              operator: 
              values:
    requiredDuringSchedulingIgnoredDuringExecution:
      nodeSelectorTerms:
        matchExpressions:
          - key:
            operator: 
            values:
        matchFields:
          - key:
            operator: 
            values:
```

Backup example(inside `SGCluster` CRD):

```yaml
scheduling:
  backup:
    nodeSelector:
      type: 
    nodeAffinity:
      preferredDuringSchedulingIgnoredDuringExecution:
        - weight:
          preference:
            matchExpressions:
              - key:
                operator: 
                values:
            matchFields:
              - key:
                operator: 
                values:
      requiredDuringSchedulingIgnoredDuringExecution:
        nodeSelectorTerms:
          matchExpressions:
            - key:
              operator: 
              values:
          matchFields:
            - key:
              operator: 
              values:

```

### Testing

**Acceptance Criteria:**
- [ ] Able to add NodeSelector, NodeAffinity for SGDbOps, SGBackup and SGDistributedLogs
- [ ] Update documentation of the CRD
- [ ] Test the implementation

Story points: 16.0
The info property of all sgcluster related endpoints is returning the deprecated <cluster name>-primary service

### Summary

The info property of all sgcluster related endpoints is returning the deprecated `<cluster name>-primary` service instead of the `<cluster name>` service.

#### Steps to reproduce

1. Create a cluster
2. Read the cluster using `/stackgres/sgclusters` or `/stackgres/namespaced/<namespace>/sgcluster/<name>`

### Expected Behaviour

The info property of all sgcluster related endpoints should return the `<cluster name>` service

### Environment

- StackGres version: 1.2.1
- Kubernetes version: ?
- Cloud provider or hardware configuration: ?

Story points: 4.0
Improve Backup configuration layout/order on SGCluster form

### Problem to solve

When setting up backup specs on an SGCluster, the following layout is shown:

![image](/uploads/4ccedafc86e7df06c18e5c10479397ca/image.png)


### Proposal

This layout might be improved by making the following changes:

- [ ] Include an "Enable Managed Backups" checkbox (since managed backups are optional and disabled by default
- [ ] Include a "Create new" option on the Object Storage dropdown
- [ ] Move the Object Storage dropdown from the bottom to the top of the fieldset



## Acceptance Criteria
- [ ] Make the proposed changes
- [ ] Make sure everything works

Story points: 4.0
Clone CRD function not working for SGClusters, SGPostgresConfigs and SGPoolingConfigs

### Summary

When trying to make a clone of SGClusters, SGPostgresConfigs or SGPoolingConfigs from the web console, the clone dialog box does not load when clicking on the corresponding button.


#### Steps to reproduce

- Enter the web console
- Head to any namespace
- Click on the "CLONE" button for any of SGCluster, SGPoolConfig or SGPostgresConfig
- The dialog box to set the clone info does not open

### Expected Behaviour

- The CLONE dialog box should open and cloning any resource other than SGBackups and SGDbOps should work properly



### Environment

- StackGres version: `1.3.0-SNAPSHOT`

Story points: 8.0
WebUI - Add loadBalancerIP to SGCluster and SGDistributedLogs

### Problem to solve

Currently, it is not possible to specify a custom load balancer IP for the Postgres services, the idea of this is to be able to set a custom load balancer IP for R/W and R/O connections, this also allows to keep the same IP in case if it's necessary to recreate the services.

### Proposal

In the SGCluster services section allows to add a custom load balancer IP (SGCluster and DistributedLogs)

```yaml
postgresServices:
    primary:
      type: LoadBalancer
      loadBalancerIP: 80.11.12.10
    replicas:
      type: LoadBalancer
      loadBalancerIP: 80.11.12.11
```

And generate a service like: 

```yaml
apiVersion: v1
kind: Service
metadata:
  name: my-cluster
spec:
  selector:
    app: StackGresCluster
    cluster-name: my-cluster
    role: master
  ports:
    - name: pgport
      protocol: TCP
      port: 5432
      targetPort: pgport
  loadBalancerIP: 80.11.12.10
```

### Links / references

**Acceptance criteria:**
- [ ] Implement the change on the WebUI - SGCluster
- [ ] Implement the change on the WebUI - DistributedLogs
- [ ] Create tests

Story points: 8.0
Decouple package requirements from docker init

### Problem to Solve

Having different package version installed than required in the script makes problems. We need a solution, where the executable scripts (such as data processing operations, models) define what requirements they have. 

This should ideally not be as a separate requirements file but withing the script as (possibly) annotations. 

We should start by drawing how this could be done.


### Technical Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================
> Give a more technical explanation of how you want the app to function. Include screenshots and links to the relevant documentation

Story points: 1.0
Data visualization pipeline fails

### Observed behaviour

Running a data visualization pipeline fails because of this error: 

python: can't open file '/epf/model/tsne.py': [Errno 2] No such file or directory


### Expected behaviour



### Steps to reproduce

Go to env environment, go to cats dogs project, launch a data visualization pipeline.

http://ec2-3-126-88-77.eu-central-1.compute.amazonaws.com:10080/mlreef/cats-dogs/commit/2988631f693d975c7523da4655aaefe9c7876884

### Terminology
> Define terms that are important in the context of this task



### Solution
move the actual script paths out of the code 
(`web/src/functions/pipeLinesHelpers.js` Line 104)

https://gitlab.com/mlreef/frontend/-/blob/develop/web/src/functions/pipeLinesHelpers.js#L104

and into the data model (`web/src/dataTypes.js`)



The source to path in the epf repo is this: /src/visualisation/tsne.py



Additional Notes
=====================


relates to:

Story points: 1.0
Automatic page refresh

### Problem to Solve

We need to include a better page refresh mechanism to improve UX. 

There are some views that need automatic refreshing: 
*  Experiment overview (after an experiment was executed) - possibly others (such as data instance, data visualization)
*  Training log view (during training)

Step 1: Discuss with @andres46 what mechanisms we could use for different views. 


### Technical Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================
> Give a more technical explanation of how you want the app to function. Include screenshots and links to the relevant documentation

Story points: 8.0
GPU libraries missing

### Observed behaviour

![image](/uploads/9ad15a80e52589cafc30c071dc1e5f9f/image.png)
### Expected behaviour

No erros.


### Steps to reproduce

http://ec2-3-126-88-77.eu-central-1.compute.amazonaws.com:10080/mlreef/cats-dogs/-/jobs/36



### Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one test



Additional Notes
=====================

* https://gitlab.com/mlreef/frontend/-/blob/develop/src/bin/startup.sh
* https://www.tensorflow.org/install/gpu#linux_setup

The basic infrastructure on the Develop environment seems to be installed correctly … but maybe not exactly the correct version combination

* http://ec2-3-126-88-77.eu-central-1.compute.amazonaws.com:10080/mlreef/testo-rainer/-/jobs/50

**Installation**
During startup the ec2 instance executes the following script which installs the Nvidia drivers:
* https://gitlab.com/mlreef/frontend/-/blob/develop/src/terraform/develop-startup.sh

Story points: 2.0
Create better dropdown from param with list

### Problem to Solve

If a param from pipelines has predefined values, as described in a list, we need to represent these better in the frontend. Currently, a dropdown is only shown if it is a boolean. 

We need to include list as an option in the epf (annotation, parsing).

We need to show the possible list values in the frontend as a dropdown. 
 

### Technical Solution
For the first iteration (Merge Request) of this implementation, it is perfectly fine to use standard browser popups

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================
Link to XD: https://xd.adobe.com/view/5e5706b9-f556-4c88-7106-5edc92fef339-2866/

![image](/uploads/5d246a56f4a847a2c7455addbf886192/image.png)

Story points: 3.0
Provide param description on mouse-over

### Problem to Solve

As a user I want to better understand what parameters really do and what they are for. Therefore, a mouse-over on the params question mark shall provide this from the EPF (param annotation).


### Technical Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================
Link to XD: https://xd.adobe.com/view/5e5706b9-f556-4c88-7106-5edc92fef339-2866/

![image](/uploads/9436e5427f73adc99fb8c244c34c16e4/image.png)

Story points: 2.0
Setup domains

### Problem to Solve

We need to set up the following domains and subdomains: 

* [x]  mlreef.com = application
* [x]  about.mlreef.com = website
* [ ]  blog.mlreef.com = blog page
* [x]  docs.mlreef.com = documentation


### Technical Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================
> Give a more technical explanation of how you want the app to function. Include screenshots and links to the relevant documentation

Story points: 2.0
WIP: Create new website

### Problem to Solve

The goal is to create the new website. 

### Technical Solution

*  We can use cookiebot to manage our cookies and cookie-popups: https://www.cookiebot.com/

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================

Link to XD Landingpage: https://xd.adobe.com/view/3494c225-ed97-4d87-47d0-0c746e8c67a6-42a5/

Link to XD Landingpage Mobile: https://xd.adobe.com/view/d8dd7007-47b0-4d69-7b8d-bc30e6488c88-aeec/

Link to XD Subpages_Template: https://xd.adobe.com/view/923ee175-b21b-4b55-489d-6fea316a1ec9-e40f/

Story points: 16.0
Render docs pages

### Problem to Solve

We want to have the docs pages rendered from md files. This should be the design. 

Question: I would like to add a menu as in varian b. How could we structure the docs to achieve this? 

Note: There are 3 frames, all scrollable separately from each other. The middle one, which one will scroll the most, will not affect the other ones. 


### Technical Solution

The docs pages need to be routed to: docs.mlreef.com 


* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================

Link to XD: https://xd.adobe.com/view/6b222fdd-685b-44ad-66bd-dbb2dbe392ce-1d13/

![Docs_variant_b](/uploads/faa8fcf15727eecabe1f2f273fccdb35/Docs_variant_b.png)

![Docs_variant_a](/uploads/2341fdc214a25e61531b7b142a0ad11d/Docs_variant_a.png)

Story points: 8.0
New experiments still not showing up in experiement overview (running)

### Observed behaviour

When creating a new experiment in dev the new experiment is not shown in under "running" but the pipeline is running on gitlab backend.

### Expected behaviour

After training, the new entry should inmediately show up and give the user the feedback that the experiment pipeline successfully started. 

### Steps to reproduce

In dev, open cats and dogs, open experiments and start a new experiment. After that return to experiment overview. Even after refreshing the page no result.

### Terminology
> Define terms that are important in the context of this task



### Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one test



Additional Notes
=====================


relates to:

Story points: 2.0
Integrate tabular data capabilities

### Problem to Solve

As a User, I want to be able to see and interact with tabular data in MLReef. 

Scope for this Iteration: Simple Tabular Data View

See a very good practice here: https://www.kaggle.com/datasets/digvijaysinhgohil/imdb-dataset-toprated-films-18982022

### Technical Solution

We would implement a POC with Dash, to create the plot for the file experiment.json and a csv file with different types of data such as integer, double, string, date etc. Just to check if we can create a visualization without adding to much weight to our framework.

To check how it should look like: 
*  https://dash-gallery.plotly.host/dash-salesforce-crm/
* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================

*  Basic level: Just showing data , upload a file a show the plot in the webpage
*  Good level: Use API's to get the data and parameters to adjust the plot 
*  Advanced level: Accept new code from the user to create the plot, or adjust the parameters with a menu.

Story points: 9.0
Show correct time stamps and time order

### Observed behaviour

Currently the times pipelines were executed (experiments, data visualization and data pipelines) seems always to be "just now". In addition, the list of experiments, data visualizations and data instances should always be ordered by time, the newest being on top of the list. 

### Expected behaviour

The time should be shown like: 

- 3 seconds ago
- 5 minutes ago
- 1 hour ago
- 2 days ago

The expires in ... can for now be deleted (we will implement this feature in the future)

### Steps to reproduce

Open dev environmen, open data instances, view how they are represented. 

### Terminology
> Define terms that are important in the context of this task



### Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one test



Additional Notes
=====================

![image](/uploads/a1916f5280a09e0574173d0cc7fe0179/image.png)

relates to:

Story points: 1.0
Remove whiteout on repository load

### Observed behaviour
While navigating back to the repository / project main page from a subpage, there is a short whiteout while the repo is loading again.

### Expected behaviour
No complete whiteout, at least the static elements of the UI should remain visible


### Steps to reproduce
* Open a Project,
* Navigate to the "Experiments" section
* Click on "Data" to get back to the repository


### Solution


Additional Notes
=====================

* Screencast Video: ![WhiteoutOnRepoLoad](/uploads/3627269d64010371ed7180b46925ee9f/WhiteoutOnRepoLoad.mov)

Story points: 4.0
Share pics (no nudes)

### Problem to Solve
As a MLReefer I want to recieve images from @flohin in the Lost City.


### Technical Solution
Open Camera and shoot, selfies prefered. 

Technical equipment needed: 

* [ ]  Florian
* [ ]  His whip
* [ ]  Selfie stick

### Terminology

If possible, reenact this: 

![image](/uploads/919d9abf35e5a19cf44c4f215f66c0f2/image.png)


Additional Notes
=====================

Story points: 1.0
Experiments: model info extended

### Problem to Solve
In the experiments executive summary the Algorithm (soon will be renamed to model) represents the info what model was used for training. 

Given the existence of code repositories we can now complete the information for this view. 

Relates to prior ticket: frontend #261 and MR !304


### Technical Solution
> Add technical implementation details and the results of the tickets discussion here.

* [ ]  Add at least one unit test
* [ ]  If useful: Add documentation to the readme


### Terminology
> Define terms that are important in the context of this task


Additional Notes
=====================

![image](/uploads/90051310f293a417f000386331a7ab96/image.png)

Story points: 4.0