Giter Club home page Giter Club logo

project-config's People

Contributors

carlosgsuarez avatar sfc-gh-eraigosa avatar yumibyte avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar

project-config's Issues

Setup a production environment

Lets either convert the existing environment to production or create a new dev environment.

This will be helpful for our live sites and backups:

#42

  • This is done when we have a production environment available.

Helm deployments needed

**Is your feature request related to a problem?
We need to automate some of the setup of the instances of the hc app in redsol subscription. We'll use helm for this before we implement the ci/cd process so that after we implement the security updates we'll have a way to deploy custom instances of the app for dev, testing and prod.

Describe the solution you'd like
Lets use helm to manage the kube deployments.

Additional context
We're getting more developers on the project and for this we'll need ci/cd. Lets get in place mechanics to do dev, test, prod deployments where we can secure our prod account and manage deployments more securely using helm.

Question about human connection skeleton project.

Saludos, espero se encuentren muy bien, a continuacion quisieramos plantear ciertas interrogantes de nivel tecnico y estructural del proyecto en desarrallo. Tomando como base el proyecto Human/Connection.
En primer lugar, con respecto a las entidades/modelos existentes en el proyecto base Human Connection, se pueden realizar cambios sobre ellas? Para citar un ejemplo especifico, el nodo/modelo de Category.js/Category.gql tiene como atributos definidos:
id, name, slug, icon, createdAt, updatedAt, y Post, que es una relacion de tipo IN con el nodo Post, sin embargo, para efectos de los atributos que se tienen contemplados en nuestra solucion para la entidad de categorias, hay otros atributos adicionales que deberia tener esta entidad, para mejor referencia de dichos atributos revisar https://docs.google.com/spreadsheets/d/1aSzhFRZ0zXlQe-esQLkx0U6E6eanUm25QWcN1NPA2uU/edit#gid=0 Entonces, la entidad actual de category es la misma que se usara para representar la entidad category que se muestra en el documento en el enlace? En caso de que si, solo se agregarian los atributos sin afectar las relaciones existentes?
La siguiente pregunta, es similar a la anterior, pero ahora para el modelo/nodo de User.js/User.gql, es esa la misma entidad que se utilizara para las operaciones de creacion, edicion, y transacciones para el usuario? Tales como: loggin, logout, changePassword? O usaremos una nueva entidad para representar al usuario de nuestra solucion?

HELP WANTED: GET THE MEDIA OF A POST WORKING ON THE ACTIVITY/ANNOUNCEMENTS TAB OF THE PROVIDER PROFILE Version ANDROID

While coding the Activity/announcement section of the provider profile in the beneficiary user view, @alexandra encounter an issue getting the media element of the post to work. She is using Human connections as this view is exactly s replication of the web app version of the user profile of the human-connections social network web app

Describe the solution you'd like
The beneficiary user should be able to see photos or videos published by the provider(organization). The provider should be able to upload photos or videos to accompany the text of the post.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features will be discussed in comments, for now we have decided that for the MVP we will go ahead an use only text for the posts.

Additional context
I am referring to this view/screen: https://www.figma.com/proto/c2PwIVEX4GuyEZaYEnkzag/Diseño-Vistas-V2-(Editando)?node-id=59%3A143&scaling=min-zoom

[ON-BOARDING] A new contributor has arrived - initial users

We're looking for volunteers all the time, and this is the right place to get started. We'd like you to open an issue to help you get connected and help us with contributions to the projects. Please start with this check list:

  • Provide an email address where we can contact you so we can send more info.
  • Get WhatsApp installed and setup so we can eventually connect on WhatsApp
  • Learn more by reading our docs

I'll be onboarding these folks once we have some additional seats:

  • abrito21
  • Osguido

[have some more to come next week]

Lets resolve changes in our models that we want to break down as we merge with Human Connection

Is your feature request related to a problem? Please describe.
We have a data structure that we developed that needs to merge with the models that we need from Human Connection. Here are some basic assumptions:

  • We will have many services that are sourced outside from other NGO's that will be loadable. These will come as a category we call our Basic Plan that has no service providers taking ownership.
  • As service providers want to take ownership, we will have a secondary plan called Standard Plan, which will allow service providers to take ownership of services, and add new associated services.

These assumptions are important for us to model in our backend.

Describe the solution you'd like
A clear and concise description of what you want to happen.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
Add any other context or screenshots about the feature request here.

Issue Templates

  • add some templates for onboarding
  • add some templates for help

Getting our hosting environments setup for Human-Connections repo

Is your feature request related to a problem? Please describe.

@yumibyte @cynthialunamaciel as you work through the class you'll be learning some valuable skills that we are going to use to automate the next steps in setting up https://github.com/JusticeInternational/Human-Connection. There are some key take aways that are important to remember from the class:

  1. Using the Azure Login (don't forget to switch tenants to justiceinternational when you login.
    image
  2. A web app is how we'll be deploying our application to Azure.
  3. A resource group is a collection of resources, like web apps and virtual machines (VMs).
  4. An App Service plan is what runs our web app and manages the billing (our app should run for free).
  5. Using GitHub Actions for CI/CD
  6. Finally we'll use GitHub packages , PR's and labels to manage all the workflow

Describe the solution you'd like

Since we're using App Service plans we will have at lest 2 sets of apps we will be deploying. 1 for each of the components of the Human Connections app however this can also be 3 apps since we can use the web for testing. There will be 2 environments, a staging and production environment so we can perform testing. The jobs and configuration for the Dockerfile will live in the project-config repository. Here are how i'd like to see the task break down.

Setup neo4j database

  • Create a build script for neo4j in script/neo4j folder. This is an adaptation of this configuration and the current project, JusticeInternational/project-config, folders Dockerfile. Use the shell script to clone and build a docker image for the project.
  • create a build workflow file for container build and publishing to docker.pkg.github.com
  • create a staging workflow file like you did in the exercise
  • create a production workflow file like you did in the exercise
  • create an environment setup workflow file for the Azure environment like you did in the exercise.

Setup the backend api service

  • Create a build script for backend in script/backend folder. This is an adaptation of this configuration and this folder Dockerfile. Use the shell script to clone and build a docker image for the project.
  • create a build workflow file for container build and publishing to docker.pkg.github.com
  • create a staging workflow file like you did in the exercise
  • create a production workflow file like you did in the exercise
  • create an environment setup workflow file for the Azure environment like you did in the exercise.

Integration time

  • Integrate the configuration values using github secrets to communicate between neo4j and the backend database.

Additional context

Unknowns

There will be lots of learning here, so don't be afraid to ask questions. We still don't know some answers around backup recover, monitoring, and versioning. We'll make new issues along the way to address those issues. We also will need some form of persistent storage answer for the neo4j database /data folder since we'll not want to loose the data we end up loading, so we'll need a separate issue to address that when we're ready.

If someone finishes early we will also need the web app environment when it's ready.

Setup a test environment

Lets setup a test environment to support #42

This is done when

  • We can login to a new backend url for the test environment.

Manually setting up our K8's environment

Is your feature request related to a problem? Please describe.

RedSol is working on our first deployment of our backend API services for our mobile app. For this we'd like to investigate deploying a minimal deployment of AKS. The Kubernetes env should use no more than 3 nodes, and be deployed on the smallest servers available. This is to maintain our low monthly available budget.

Describe the solution you'd like

The work will be complete when the following things are possible.
1. We are able to deploy our working API service along with neo4j database.
2. A https based URL is available for the API services, the neo4j interface should only be accessible with a proxy connection with kube.
3. Persistent storage is available for the neo4j application and it is being backed up.
4. Our team can access the kubernetes instance and authorization is provided with AD
5. The AKS instance is being managed within a resource group
All deployment and configuration steps have been documented in the project-config repo.

Describe the solution you'd like

TODO for Dev team implementing the work.

Describe alternatives you've considered

TODO for Dev team implementing the work.

Additional context

Note, please contact @wenlock or @Carlosgsuarez to get started so we can grant access and provide additional admin access to perform the work. We want to eventually take this work done and automate it so it's key that the documents provide details needed and step by step instructions used in the UI or cli's that allow us to accomplish the automation. We will be using this first environment for our app prototype on Android.

AKS secrets

Is your feature request related to a problem? Please describe.
Our secrets should be secured in AZ KeyVault so that they don't have to be persisted in secrets.yaml.

Describe the solution you'd like
Update the kube config to persist secrets with AKV.

Describe alternatives you've considered
A clear and concise description of any alternative solutions or features you've considered.

Additional context
We have our deployment here; #29
That's good for crash and burn but not good for prod

backups required

We need to setup some backups for our neo4j environmet. Here is a reference; https://neo4j.com/docs/operations-manual/4.0/backup-restore/

This work is complete when:

  • We have a GitHub Actions job that is running at a periodic basis to capture backups. Lets shoot for hourly.
  • We have a method automated for performing restores.
  • We are restoring once a week to a test environment.
  • We have notifications when something fails.

[ON-BOARDING] A new contributor has arrived - @username

We're looking for volunteers all the time, and this is the right place to get started. We'd like you to open an issue to help you get connected and help us with contributions to the projects. Please start with this check list:

  • Reach out to us via email and let us know who you are and so we can send you more info.
  • Get WhatsApp installed and setup so we can eventually connect on WhatsApp
  • Learn more by reading our docs

HIGH PRIORITY TO DEVELOP USER EXPERIENCE "As an SSI, I want to get ownership and edit my profile"

As an SSI, I want to edit my profile (Get ownership and edit my profile). -- Como SSI, quiero editar mi perfil

For the web app this implies to change the current Human Connection profile to the one designed for the last version the prototype. Ask Carlos for this last version

For the trial where we will try to connect HC social network as backend of the android this implies to connect the data structure of the Android frond end with the backed ed based in Human connection.

ASK persistent volume claim backups

Is your feature request related to a problem? Please describe.
We need to be able to backup our data for persistent volumes.

Describe the solution you'd like
We can follow these instructions for setting things up.

Describe alternatives you've considered
Would be ok to backup the data in some other way is fine.

Additional context
This is continuation work from #27 which we'll need for production.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.