st4sd-runtime-k8s

Kubernetes operator for instantiating ST4SD virtual experiments on K8s.

https://github.com/st4sd/st4sd-runtime-k8s

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (14.4%) to scientific vocabulary
Last synced: 6 months ago · JSON representation ·

Repository

Kubernetes operator for instantiating ST4SD virtual experiments on K8s.

Basic Info
  • Host: GitHub
  • Owner: st4sd
  • License: apache-2.0
  • Language: Go
  • Default Branch: main
  • Size: 155 KB
Statistics
  • Stars: 4
  • Watchers: 2
  • Forks: 0
  • Open Issues: 1
  • Releases: 3
Created over 3 years ago · Last pushed over 1 year ago
Metadata Files
Readme Contributing License Code of conduct Citation

README.md

ST4SD Runtime K8s

Details

Kubernetes operator for workflows.st4sd.ibm.com.

The documentation of the Workflow schema is in docs/schema.md.

Example

The Workflow object below below instructs Kubernetes/OpenShift to execute the sum-numbers workflow. The tutorial explains the FlowIR implementation of the toy-example sum-numbers.

```yaml

Assumes a full ST4SD deployment because it extracts configuration metadata from

the st4sd-runtime-service ConfigMap

apiVersion: st4sd.ibm.com/v1alpha1 kind: Workflow metadata: namespace: sum-numbers spec: package: url: https://github.com/st4sd/sum-numbers/ branch: main ```

Quick links

Getting started

Requirements

Development

  • Build the binaries: make build
  • If you want to start fresh with a different version of the operator sdk:

    bash operator-sdk init --domain ibm.com --repo github.com/st4sd/st4sd-runtime-k8s operator-sdk create api --group st4sd --version v1alpha1 --kind Workflow --resource --controller --namespaced=true

  • To modify the workflow schema:

    • Modifying workflow_types.go accordingly
    • Execute make generate
    • You may then build the new Custom Resource Definition (CRD): make manifests.
    • Use the new Workflow CRD (e.g. kubectly apply -f config/crd/bases/st4sd.ibm.com_workflows.yaml)

Installing dependencies

Install the dependencies for this project with:

bash go get .

Developing locally

Coming soon.

Lint and fix files

Coming soon.

Help and Support

Please feel free to reach out to one of the maintainers listed in the MAINTAINERS.md page.

Contributing

We always welcome external contributions. Please see our guidance for details on how to do so.

References

If you use ST4SD in your projects, please consider citing the following:

bibtex @software{st4sd_2022, author = {Johnston, Michael A. and Vassiliadis, Vassilis and Pomponio, Alessandro and Pyzer-Knapp, Edward}, license = {Apache-2.0}, month = {12}, title = {{Simulation Toolkit for Scientific Discovery}}, url = {https://github.com/st4sd/st4sd-runtime-core}, year = {2022} }

License

This project is licensed under the Apache 2.0 license. Please see details here.

Owner

  • Name: ST4SD: Simulation Tookit for Scientific Discovery
  • Login: st4sd
  • Kind: organization

Citation (CITATION.cff)

# This CITATION.cff file was generated with cffinit.
# Visit https://bit.ly/cffinit to generate yours today!

cff-version: 1.2.0
title: Simulation Toolkit for Scientific Discovery
message: >-
  If you use this software, please cite it using the
  metadata from this file.
type: software
authors:
  - given-names: Michael A.
    family-names: Johnston
    affiliation: IBM Research
  - given-names: Vassilis
    family-names: Vassiliadis
    affiliation: IBM Research
  - given-names: Alessandro
    family-names: Pomponio
    affiliation: IBM Research
    orcid: 'https://orcid.org/0000-0003-1655-7500'
  - given-names: Edward
    family-names: Pyzer-Knapp
    affiliation: IBM Research
identifiers:
  - type: url
    value: 'https://github.com/st4sd/st4sd-runtime-core'
    description: ST4SD Runtime
repository-code: 'https://github.com/st4sd/st4sd-runtime-core'
url: 'https://st4sd.github.io/overview/'
keywords:
  - accelerated-discovery
  - simulation
  - toolkit
license: Apache-2.0
date-released: '2022-12-08'

GitHub Events

Total
Last Year

Packages

  • Total packages: 1
  • Total downloads: unknown
  • Total dependent packages: 0
  • Total dependent repositories: 0
  • Total versions: 1
proxy.golang.org: github.com/st4sd/st4sd-runtime-k8s
  • Versions: 1
  • Dependent Packages: 0
  • Dependent Repositories: 0
Rankings
Dependent packages count: 9.2%
Average: 9.7%
Dependent repos count: 10.3%
Last synced: 10 months ago

Dependencies

Dockerfile docker
  • ${builder_image} latest build
  • ${runtime_image} latest build
go.mod go
  • github.com/beorn7/perks v1.0.1
  • github.com/cespare/xxhash/v2 v2.3.0
  • github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
  • github.com/emicklei/go-restful/v3 v3.12.1
  • github.com/evanphx/json-patch v5.6.0+incompatible
  • github.com/evanphx/json-patch/v5 v5.9.0
  • github.com/fsnotify/fsnotify v1.7.0
  • github.com/fxamacker/cbor/v2 v2.7.0
  • github.com/go-logr/logr v1.4.2
  • github.com/go-logr/zapr v1.3.0
  • github.com/go-openapi/jsonpointer v0.21.0
  • github.com/go-openapi/jsonreference v0.21.0
  • github.com/go-openapi/swag v0.23.0
  • github.com/gogo/protobuf v1.3.2
  • github.com/golang/groupcache v0.0.0-20210331224755-41bb18bfe9da
  • github.com/golang/protobuf v1.5.4
  • github.com/google/gnostic-models v0.6.8
  • github.com/google/go-cmp v0.6.0
  • github.com/google/gofuzz v1.2.0
  • github.com/google/uuid v1.6.0
  • github.com/imdario/mergo v0.3.16
  • github.com/josharian/intern v1.0.0
  • github.com/json-iterator/go v1.1.12
  • github.com/klauspost/compress v1.17.9
  • github.com/mailru/easyjson v0.7.7
  • github.com/modern-go/concurrent v0.0.0-20180306012644-bacd9c7ef1dd
  • github.com/modern-go/reflect2 v1.0.2
  • github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822
  • github.com/pkg/errors v0.9.1
  • github.com/prometheus/client_golang v1.20.3
  • github.com/prometheus/client_model v0.6.1
  • github.com/prometheus/common v0.59.1
  • github.com/prometheus/procfs v0.15.1
  • github.com/spf13/pflag v1.0.5
  • github.com/x448/float16 v0.8.4
  • go.uber.org/multierr v1.11.0
  • go.uber.org/zap v1.27.0
  • golang.org/x/exp v0.0.0-20240904232852-e7e105dedf7e
  • golang.org/x/net v0.29.0
  • golang.org/x/oauth2 v0.23.0
  • golang.org/x/sys v0.25.0
  • golang.org/x/term v0.24.0
  • golang.org/x/text v0.18.0
  • golang.org/x/time v0.6.0
  • gomodules.xyz/jsonpatch/v2 v2.4.0
  • google.golang.org/protobuf v1.34.2
  • gopkg.in/inf.v0 v0.9.1
  • gopkg.in/yaml.v2 v2.4.0
  • gopkg.in/yaml.v3 v3.0.1
  • k8s.io/api v0.31.0
  • k8s.io/apiextensions-apiserver v0.31.0
  • k8s.io/apimachinery v0.31.0
  • k8s.io/client-go v0.31.0
  • k8s.io/klog/v2 v2.130.1
  • k8s.io/kube-openapi v0.0.0-20240903163716-9e1beecbcb38
  • k8s.io/utils v0.0.0-20240902221715-702e33fdd3c3
  • sigs.k8s.io/controller-runtime v0.19.0
  • sigs.k8s.io/json v0.0.0-20221116044647-bc3834ca7abd
  • sigs.k8s.io/structured-merge-diff/v4 v4.4.1
  • sigs.k8s.io/yaml v1.4.0
go.sum go
  • 113 dependencies