Coder Social home page Coder Social logo

kubernetes's Introduction

Kubernetes

This is the git repository for the Open Computing Facility's Kubernetes cluster.

Deploying Software

  1. Create a new python file in ocfkube/apps with a function build() that returns a list of Kubernetes objects (as dicts). See the other python files in that folder for examples. Helper functions are provided for Helm charts, although not all software will use helm charts. a. If you need to build your own container image, do so in another git repository. Instructions coming soon (TM).
  2. (Root Required) Go to ArgoCD and run a sync. Before you click sync, look at the diff to sanity check what will change. We do not automatically sync configuration for safety reasons.

Code-Test Loop

First, install dependencies and start a poetry shell...

poetry install
poetry shell

Then, make changes and run the following command to test your changes...

# inside poetry shell, might be python3 depending on your package manager
# e.x. python -m ocfkube cilium -> prints YAML to stdout for cilium
python -m ocfkube <appname>

Folder Structure

Our deployment follows the folder structure of a typical poetry application.

- ocfkube
    - apps
        - cilium
        - notes
        - ... (any software)
        - versions.toml (all software versions)
    - utils
        - ... (helper functions)
    - lib
        - ... (common k8s object generators)

Bootstrapping

A bootstrap script is provided to help bring up new clusters when needed. It installs the bare minimum required to run ArgoCD, provided Kubernetes is already running without a CNI, and KUBECONFIG is pointed at the right place.

./bootstrap.sh

Contributing

The Open Computing Facility (OCF) is an all-volunteer student organization dedicated to free computing for all University of California, Berkeley students, faculty, and staff. Students from all backgrounds are encouraged to join as staff! If you're not a student, or just want to make a one time contribution, please use the standard GitHub pull request workflow. Thanks for helping out :)

kubernetes's People

Contributors

64bitpandas avatar ethanhs avatar ethanwu10 avatar fydai avatar nikhiljha avatar oliver-ni avatar

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.