diff --git a/flytectl/doc-requirements.in b/flytectl/doc-requirements.in index e0751192d5..bb24b9a7b1 100644 --- a/flytectl/doc-requirements.in +++ b/flytectl/doc-requirements.in @@ -5,5 +5,5 @@ sphinx-material sphinx-code-include sphinx-copybutton sphinx_fontawesome -sphinx_tabs sphinxcontrib-yt +sphinx-panels diff --git a/flytectl/doc-requirements.txt b/flytectl/doc-requirements.txt index 671f3d786e..e3c954b328 100644 --- a/flytectl/doc-requirements.txt +++ b/flytectl/doc-requirements.txt @@ -8,7 +8,7 @@ alabaster==0.7.12 # via sphinx babel==2.9.1 # via sphinx -beautifulsoup4==4.9.3 +beautifulsoup4==4.10.0 # via # furo # sphinx-code-include @@ -19,10 +19,10 @@ charset-normalizer==2.0.4 # via requests css-html-js-minify==2.5.5 # via sphinx-material -docutils==0.16 +docutils==0.17.1 # via # sphinx - # sphinx-tabs + # sphinx-panels git+git://github.com/flyteorg/furo@main # via -r doc-requirements.in idna==3.2 @@ -41,7 +41,6 @@ pygments==2.10.0 # via # sphinx # sphinx-prompt - # sphinx-tabs pyparsing==2.4.7 # via packaging python-slugify[unidecode]==5.0.2 @@ -64,8 +63,8 @@ sphinx==4.1.2 # sphinx-copybutton # sphinx-fontawesome # sphinx-material + # sphinx-panels # sphinx-prompt - # sphinx-tabs # sphinxcontrib-yt sphinx-code-include==1.1.1 # via -r doc-requirements.in @@ -75,9 +74,9 @@ sphinx-fontawesome==0.0.6 # via -r doc-requirements.in sphinx-material==0.0.34 # via -r doc-requirements.in -sphinx-prompt==1.5.0 +sphinx-panels==0.6.0 # via -r doc-requirements.in -sphinx-tabs==3.2.0 +sphinx-prompt==1.5.0 # via -r doc-requirements.in sphinxcontrib-applehelp==1.0.2 # via sphinx @@ -95,7 +94,7 @@ sphinxcontrib-yt==0.2.2 # via -r doc-requirements.in text-unidecode==1.3 # via python-slugify -unidecode==1.2.0 +unidecode==1.3.0 # via python-slugify urllib3==1.26.6 # via requests diff --git a/flytectl/docs/source/_static/custom.css b/flytectl/docs/source/_static/custom.css new file mode 100644 index 0000000000..96f45d4066 --- /dev/null +++ b/flytectl/docs/source/_static/custom.css @@ -0,0 +1,16 @@ +html .tabbed-set > label { + color: var(--color-foreground-border); +} + +html .tabbed-set > input:checked + label { + border-color: var(--color-link); + color: var(--color-link); +} + +html .tabbed-set > label:hover { + color: var(--color-link); +} + +html .tabbed-content { + box-shadow: 0 -.0625rem var(--color-background-border),0 .0625rem var(--color-background-border); +} \ No newline at end of file diff --git a/flytectl/docs/source/conf.py b/flytectl/docs/source/conf.py index 053bbdf1e3..6767fad9e7 100644 --- a/flytectl/docs/source/conf.py +++ b/flytectl/docs/source/conf.py @@ -23,7 +23,7 @@ author = "Flyte" # The full version, including alpha/beta/rc tags -release = re.sub('^v', '', os.popen('git describe').read().strip()) +release = re.sub("^v", "", os.popen("git describe").read().strip()) version = release @@ -43,8 +43,8 @@ "sphinx-prompt", "sphinx_copybutton", "sphinx_fontawesome", - "sphinx_tabs.tabs", "sphinxcontrib.yt", + "sphinx_panels", ] # build the templated autosummary files @@ -77,7 +77,7 @@ # List of patterns, relative to source directory, that match files and # directories to ignore when looking for source files. # This pattern also affects html_static_path and html_extra_path . -exclude_patterns = [u'_build', 'Thumbs.db', '.DS_Store'] +exclude_patterns = [u"_build", "Thumbs.db", ".DS_Store"] # The name of the Pygments (syntax highlighting) style to use. pygments_style = "tango" @@ -123,6 +123,7 @@ # relative to this directory. They are copied after the builtin static files, # so a file named "default.css" will overwrite the builtin "default.css". html_static_path = ["_static"] +html_css_files = ["custom.css"] # Custom sidebar templates, must be a dictionary that maps document names # to template names. diff --git a/flytectl/docs/source/index.rst b/flytectl/docs/source/index.rst index bac2ce0607..3125fb7637 100644 --- a/flytectl/docs/source/index.rst +++ b/flytectl/docs/source/index.rst @@ -1,8 +1,8 @@ .. flytectl doc -########################################## +###################### ``Flytectl`` Reference -########################################## +###################### Overview ========= @@ -16,26 +16,23 @@ Install Flytectl is a Golang binary and can be installed on any platform supported by golang +.. tabbed:: OSX -.. tabs:: + .. prompt:: bash $ - .. tab:: OSX + brew install flyteorg/homebrew-tap/flytectl - .. prompt:: bash $ + *Upgrade* existing installation using the following command: - brew install flyteorg/homebrew-tap/flytectl + .. prompt:: bash $ - *Upgrade* existing installation using the following command: + brew update && brew upgrade flytectl - .. prompt:: bash $ +.. tabbed:: Other Operating systems - brew update && brew upgrade flytectl + .. prompt:: bash $ - .. tab:: Other Operating systems - - .. prompt:: bash $ - - curl -s https://raw.githubusercontent.com/lyft/flytectl/master/install.sh | bash + curl -s https://raw.githubusercontent.com/lyft/flytectl/master/install.sh | bash **Test** if Flytectl is installed correctly (your Flytectl version should be > 0.2.0) using the following command: @@ -51,79 +48,79 @@ on command-line. The following configuration is useful to setup. Basic Configuration -------------------- -.. tabs:: Flytectl configuration - - .. tab:: Local Flyte Sandbox - - Automatically configured for you by ``flytectl sandbox`` command. - - .. code-block:: yaml - - admin: - # For GRPC endpoints you might want to use dns:///flyte.myexample.com - endpoint: dns:///localhost:30081 - insecure: false # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) - authType: Pkce # authType: Pkce # if using authentication or just drop this. - storage: - connection: - access-key: minio - auth-type: accesskey - disable-ssl: true - endpoint: http://localhost:30084 - region: my-region-here - secret-key: miniostorage - container: my-s3-bucket - type: minio - - .. tab:: AWS Configuration - - .. code-block:: yaml - - admin: - # For GRPC endpoints you might want to use dns:///flyte.myexample.com - endpoint: dns:/// - authType: Pkce # authType: Pkce # if using authentication or just drop this. - insecure: true # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) - storage: - type: stow - stow: - kind: s3 - config: - auth_type: iam - region: # Example: us-east-2 - container: # Example my-bucket. Flyte k8s cluster / service account for execution should have read access to this bucket - - .. tab:: GCS Configuration - - .. code-block:: yaml - - admin: - # For GRPC endpoints you might want to use dns:///flyte.myexample.com - endpoint: dns:/// - authType: Pkce # authType: Pkce # if using authentication or just drop this. - insecure: false # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) - storage: - type: stow - stow: - kind: google - config: - json: "" - project_id: # TODO: replace with the GCP project ID - scopes: https://www.googleapis.com/auth/devstorage.read_write - container: # Example my-bucket. Flyte k8s cluster / service account for execution should have access to this bucket - - .. tab:: Others - - For other supported storage backends like Oracle, Azure, etc., refer to the configuration structure `here `__. - - - Place this in $HOME/.flyte directory with name config.yaml. - This file is searched in - - * $HOME/.flyte +Flytectl configuration + +.. tabbed:: Local Flyte Sandbox + + Automatically configured for you by ``flytectl sandbox`` command. + + .. code-block:: yaml + + admin: + # For GRPC endpoints you might want to use dns:///flyte.myexample.com + endpoint: dns:///localhost:30081 + insecure: false # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) + authType: Pkce # authType: Pkce # if using authentication or just drop this. + storage: + connection: + access-key: minio + auth-type: accesskey + disable-ssl: true + endpoint: http://localhost:30084 + region: my-region-here + secret-key: miniostorage + container: my-s3-bucket + type: minio + +.. tabbed:: AWS Configuration + + .. code-block:: yaml + + admin: + # For GRPC endpoints you might want to use dns:///flyte.myexample.com + endpoint: dns:/// + authType: Pkce # authType: Pkce # if using authentication or just drop this. + insecure: true # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) + storage: + type: stow + stow: + kind: s3 + config: + auth_type: iam + region: # Example: us-east-2 + container: # Example my-bucket. Flyte k8s cluster / service account for execution should have read access to this bucket + +.. tabbed:: GCS Configuration + + .. code-block:: yaml + + admin: + # For GRPC endpoints you might want to use dns:///flyte.myexample.com + endpoint: dns:/// + authType: Pkce # authType: Pkce # if using authentication or just drop this. + insecure: false # insecure: True # Set to true if the endpoint isn't accessible through TLS/SSL connection (not recommended except on local sandbox deployment) + storage: + type: stow + stow: + kind: google + config: + json: "" + project_id: # TODO: replace with the GCP project ID + scopes: https://www.googleapis.com/auth/devstorage.read_write + container: # Example my-bucket. Flyte k8s cluster / service account for execution should have access to this bucket + +.. tabbed:: Others + + For other supported storage backends like Oracle, Azure, etc., refer to the configuration structure `here `__. + + Place the config file in ``$HOME/.flyte`` directory with the name config.yaml. + This file is typically searched in: + + * ``$HOME/.flyte`` * currDir from where you run flytectl - * /etc/flyte/config - You can pass it commandline using --config aswell + * ``/etc/flyte/config`` + + You can pass the file name in the commandline using ``--config `` as well! .. toctree::