Git Product home page Git Product logo

slateci.github.io's Introduction

slate.github.io

License Integration Tests Website Deployment

This repository contains the source code for the slateci.io web site. It is modeled after the istio.io website.

How to contribute

You can contribute to the website simply by modifying the markdown in the places.

How to modify a page that already exists

Each page on the website as a link "Edit This Page on GitHub". This will open the corresponding markdown page in the repository. Edit and commit.

How to add a post on the blog

Blog posts are in the directory posts. Add a file there following the format of the others.

Technical details

The website uses Jekyll templates and is hosted on GitHub Pages.

To run the site locally with Docker, use the following command:

docker run --rm --label=jekyll --volume=$(pwd):/srv/jekyll  -it -p 127.0.0.1:4000:4000 jekyll/jekyll jekyll serve

Make sure you are not introducing html errors or bad links:

$ docker run --rm --label=jekyll --volume=$(pwd):/srv/jekyll  -it  jekyll/jekyll sh -c "bundle install && rake test"
...
HTML-Proofer finished successfully.

Side note for those on non-linux machines

If you're developing locally but not on a Linux machine, you have a couple options.

  1. You can opt to use Docker for Mac / Docker for Windows. This will give you a docker environment from which to run the above docker container (which has all the of the correct Jekyll dependencies and Ruby versions installed).

  2. Alternatively, you can try installing Jekyll locally. You may need to install other prerequisites manually (which is where using the docker image shines). Here's an example of doing so for Mac OS X:

    $ xcode-select --install
    $ brew install ruby
    $ sudo gem install bundler
    $ sudo gem install jekyll
    $ cd slateci.github.io
    $ bundle install
    $ bundle exec jekyll build
    $ bundle exec jekyll serve

slateci.github.io's People

Contributors

adamhgriffith-uofu avatar amblinalong avatar briedel avatar checkyourgages avatar cnweaver avatar dependabot[bot] avatar emersonford avatar fengpinghu avatar gcarcassi avatar ike091 avatar ivukotic avatar jarofmy avatar jmcragun avatar jshelly avatar jstidd avatar lannparty avatar lincolnbryant avatar luxgriffith avatar mansalu avatar muali14 avatar pjorgen1 avatar polinalyubavina avatar rajends-umich avatar robrwg avatar spelkington avatar sthapa avatar

Stargazers

 avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar

slateci.github.io's Issues

FAIL: test_docs_page (__main__.WebPageBrowsing)

Getting the following error:

======================================================================
FAIL: test_docs_page (__main__.WebPageBrowsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/runner/work/slateci.github.io/slateci.github.io/slateci-unit-tests/main.py", line 155, in test_docs_page
    docs_page.iterate_links_doc_content(linkL1, linkL2)
  File "/home/runner/work/slateci.github.io/slateci.github.io/slateci-unit-tests/page.py", line 154, in iterate_links_doc_content
    assert self.is_page_valid()
AssertionError

----------------------------------------------------------------------
Ran 6 tests in 206.988s

FAILED (failures=1)

Fix Scroll Jumping

There is an issue with docs pages jumping when you scroll the page. This only happens when the window is minimized to the point where the menus become hamburgers.

Footer covers left nav

Steps to repeat:

  1. Navigate to https://slateci.io/docs/security-and-policies/index.html.
  2. Click Security and Policies in the left navigation.
  3. Scroll to the bottom of the page.
  4. Note that Resources in the left navigation is now covered by the footer.

Related Selenium failure text:

======================================================================
ERROR: test_docs_page (__main__.WebPageBrowsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/opt/project/main.py", line 103, in test_docs_page
    side_menu_btns[i].click()
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 80, in click
    self._execute(Command.CLICK_ELEMENT)
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webelement.py", line 633, in _execute
    return self._parent.execute(command, params)
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/webdriver.py", line 321, in execute
    self.error_handler.check_response(response)
  File "/usr/local/lib/python3.9/site-packages/selenium/webdriver/remote/errorhandler.py", line 242, in check_response
    raise exception_class(message, screen, stacktrace)
selenium.common.exceptions.ElementClickInterceptedException: Message: element click intercepted: Element <a href="/docs/resources/k8s-certificates.html" role="button" aria-expanded="false" aria-controls="resources" class="doc-nav-top-link">...</a> is not clickable at point (48, 912). Other element would receive the click: <footer id="footer">...</footer>
  (Session info: headless chrome=91.0.4472.101)


----------------------------------------------------------------------

footer-covers-leftnav

MetalLB instructions need updates

Installing a fresh cluster today with MetalLB v0.10.2 as per the instructions, I ran into a problem that required me to do the following:

kubectl create secret generic -n metallb-system memberlist --from-literal=secretkey="$(openssl rand -base64 128)"

I am not sure if this is a new, general problem with MetalLB, or a problem between keyboard and chair.

Perhaps we should update the instructions for MetalLB v0.11.0, as is recommended by upstream? https://metallb.universe.tf/installation/

It may obviate this issue.

Integration tests: selenium.common.exceptions.TimeoutException

Sometimes we encounter timeout errors in the Integration tests (e.g. from Add example logs, fix a typo (#184) #107:

======================================================================
ERROR: test_comm_page (__main__.WebPageBrowsing)
----------------------------------------------------------------------
Traceback (most recent call last):
  File "/home/runner/work/slateci.github.io/slateci.github.io/slateci-unit-tests/main.py", line 210, in test_comm_page
    comm_page.wait_for_page_loaded()
  File "/home/runner/work/slateci.github.io/slateci.github.io/slateci-unit-tests/page.py", line 211, in wait_for_page_loaded
    WebDriverWait(self.driver, 20).until(
  File "/opt/hostedtoolcache/Python/3.9.7/x64/lib/python3.9/site-packages/selenium/webdriver/support/wait.py", line 90, in until
    raise TimeoutException(message, screen, stacktrace)
selenium.common.exceptions.TimeoutException: Message: 
Stacktrace:
#0 0x5585a80722c3 <unknown>
#1 0x5585a7e7b83a <unknown>
...
...

I believe this is because the Integration test workflow is running before the GitHub pages workflow is done publishing the new site content. Both work workflows trigger from push events to master so let's try a workflow_run event for the Integration Tests (see workflow_run for more details.

document app developmnt tips n tricks

today I ran into a few helm issues:

Error: 1 chart(s) linted, 1 chart(s) failed
	%!s(<nil>)
	[INFO] Chart.yaml: icon is recommended
	[ERROR] templates/: render error at (condor-login/templates/deployment.yaml:109): unexpected EOF

This was due to a missing {{ end }}

Likewise I also ran into a problem with _helpers.tpl, which ultimately ended up being:

diff --git a/incubator/condor-login/condor-login/templates/pvc.yaml b/incubator/condor-login/condor-login/templates/pvc.yaml
index 08ce899..d840ab1 100644
--- a/incubator/condor-login/condor-login/templates/pvc.yaml
+++ b/incubator/condor-login/condor-login/templates/pvc.yaml
@@ -1,9 +1,9 @@
 apiVersion: v1
 kind: PersistentVolumeClaim
 metadata:
-  name: {{ template "condor-login.name" . }}-config-osg
+  name: {{ template "condor-login.fullname" . }}-config-osg
   labels:
-    app: {{ template "condor-login.name" . }}
+    app: {{ template "condor-login.fullname" . }}
     chart: {{ template "condor-login.chart" . }}
     release: {{ .Release.Name }}
     instance: {{ .Values.Instance }}
@@ -18,9 +18,9 @@ spec:
 apiVersion: v1
 kind: PersistentVolumeClaim
 metadata:
-  name: {{ template "condor-login.name" . }}-connect
+  name: {{ template "condor-login.fullname" . }}-connect
   labels:
-    app: {{ template "condor-login.name" . }}
+    app: {{ template "condor-login.fullname" . }}
     chart: {{ template "condor-login.chart" . }}
     release: {{ .Release.Name }}
     instance: {{ .Values.Instance }}

Note the lack of . in the previous versions.

Other stuff like that we need to document..

dockerd runtime requires daemon config changes

While dockerd is headed out the door the following is necessary when navigating the current manual SLATE installation instructions.

mkdir /etc/docker
cat <<EOF | sudo tee /etc/docker/daemon.json
{
  "exec-opts": ["native.cgroupdriver=systemd"],
  "log-driver": "json-file",
  "log-opts": {
    "max-size": "100m"
  },
  "storage-driver": "overlay2"
}
EOF

Resources:

Application advertising on the front page

We need to first gather logos/icons for applications we support, then we should show some of them on the front page to get people interested in what they could run.

Update docs to reflect new catalog

Background

The SLATE catalog is moving to the following GitHub repos:

Task

Update the external-facing material at https://slateci.io/docs/apps to reflect this new information. Once complete create a pull request and submit to the team for review.

OpenStack instructions are missing

The instructions for setting up MetalLB on OpenStack (55ba3c8) appear to have been removed (unless I am overlooking them). These are important to include, as this is a case we use fairly frequently ourselves and is often requests by sites who are interested in trying out SLATE.

Google Map data check

Verify that the cluster data on the Google Map is accurate, and that cluster information isn't being used in the headers of nodes.

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.