Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Automatically sync docs from Tekton repos to Website #34

Closed
ghost opened this issue Mar 11, 2020 · 17 comments
Closed

Automatically sync docs from Tekton repos to Website #34

ghost opened this issue Mar 11, 2020 · 17 comments
Assignees
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.

Comments

@ghost
Copy link

ghost commented Mar 11, 2020

Expected Behavior

Changes to the docs of a Tekton repo such as Pipeline should be reflected in the Website as soon as possible.

Actual Behavior

At the moment we have a script that syncs docs from a fork of Pipeline. The script expects a special table at the top of docs and during the initial review of the website this was deemed as a bit of an ugly addition given that it only served the syncing script.

TODO(sbwsg): Update this issue with details of the script and the table that's needed. Link to any PR discussion that was added around this.

@bobcatfish
Copy link
Collaborator

/kind beta-blocking

@tekton-robot tekton-robot added the kind/beta-blocking Categorizes issue or PR as related to the beta api label Mar 18, 2020
@bobcatfish bobcatfish removed the kind/beta-blocking Categorizes issue or PR as related to the beta api label Mar 18, 2020
@bobcatfish
Copy link
Collaborator

I've removed "beta blocking" from this b/c we can just do #37 and tackle this post beta.

@wlynch
Copy link
Member

wlynch commented Jun 2, 2020

/assign wlynch

I'm going to start working on automating the sync here. I'll focus on just the automation pipeline, this way I don't get in the way of any work being done with sync configs.

@wlynch
Copy link
Member

wlynch commented Jun 2, 2020

Tentative Plan:

I'm assuming we will want to use Tekton for managing deployments.

  1. Make sync its own dedicated image (mainly for dependency caching).
    To start this will be managed independently of doc deploys. Unsure if we want to keep this as an uncoupled dependency or tie it in as part of the deploy pipeline.
  2. Create a Task that runs the sync image.
  3. Create a Pipeline that pulls in multiple repos and runs sync.

wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 2, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).
3. Moves requirements.txt to sync directory to be closer to actual code.
   Since we're not going to be using Netlify Build for deployments,
   placement of this file doesn't matter.

Issue: tektoncd#34
wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 2, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).
3. Moves requirements.txt to sync directory to be closer to actual code.
   Since we're not going to be using Netlify Build for deployments,
   placement of this file doesn't matter.

Issue: tektoncd#34
@wlynch wlynch mentioned this issue Jun 2, 2020
2 tasks
wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 2, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).
3. Moves requirements.txt to sync directory to be closer to actual code.
   Since we're not going to be using Netlify Build for deployments,
   placement of this file doesn't matter.

Issue: tektoncd#34
wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 2, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).
3. Moves requirements.txt to sync directory to be closer to actual code.
   Since we're not going to be using Netlify Build for deployments,
   placement of this file doesn't matter.

Issue: tektoncd#34
wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 2, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).

Issue: tektoncd#34
wlynch added a commit to wlynch/tektoncd-website that referenced this issue Jun 11, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).

Symlinks are retainined in the root directory for requirements.txt and
runtime.txt to satisfy Netlify Build requirements:
https://docs.netlify.com/configure-builds/manage-dependencies/#python

Issue: tektoncd#34
tekton-robot pushed a commit that referenced this issue Jun 15, 2020
This achieves a few things:

1. Creates Dockerfile for sync tool, so that it can be invoked from
   Tekton tasks.
2. Makes sync config directory configurable by flag, so that the tool
   can be ran from any directory. This defaults to sync/config (same as
   before).

Symlinks are retainined in the root directory for requirements.txt and
runtime.txt to satisfy Netlify Build requirements:
https://docs.netlify.com/configure-builds/manage-dependencies/#python

Issue: #34
@tekton-robot
Copy link

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

/close

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close.

/lifecycle rotten

Send feedback to tektoncd/plumbing.

@tekton-robot
Copy link

@tekton-robot: Closing this issue.

In response to this:

Rotten issues close after 30d of inactivity.
Reopen the issue with /reopen.
Mark the issue as fresh with /remove-lifecycle rotten.

/close

Send feedback to tektoncd/plumbing.

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot tekton-robot added the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 14, 2020
@AlanGreene
Copy link
Member

/remove-lifecycle rotten
/reopen

@tekton-robot tekton-robot reopened this Aug 14, 2020
@tekton-robot
Copy link

@AlanGreene: Reopened this issue.

In response to this:

/remove-lifecycle rotten
/reopen

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

@tekton-robot tekton-robot removed the lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. label Aug 14, 2020
@tekton-robot
Copy link

Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
If this issue is safe to close now please do so with /close.

/lifecycle stale

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Nov 12, 2020
@popcor255
Copy link
Member

/remove-lifecycle rotten
/reopen

@bobcatfish
Copy link
Collaborator

I think @afrittoli has been looking into this?

@popcor255
Copy link
Member

I think this might be a different issue. For a doc to be rendered to website it must include the correct metadata. It might make sense to include this metadata on the config file itself. So, there is central place to modify it.

@tekton-robot
Copy link

Stale issues rot after 30d of inactivity.
Mark the issue as fresh with /remove-lifecycle rotten with a justification.
Rotten issues close after an additional 30d of inactivity.
If this issue is safe to close now please do so with /close with a justification.
If this issue should be exempted, mark the issue as frozen with /lifecycle frozen with a justification.

/lifecycle rotten

Send feedback to tektoncd/plumbing.

@tekton-robot tekton-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Dec 12, 2020
@bobcatfish
Copy link
Collaborator

Definitely something we still want, afaik we still need to sync the docs manually (is that right @afrittoli @popcor255 ?)

/lifecycle frozen

@tekton-robot tekton-robot added lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness. and removed lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. labels Dec 14, 2020
@afrittoli
Copy link
Member

The sync happens automatically now, at deploy time. We deploy nightly.
However the latest fixes will show up on the master version of docs only.
We don't have a way to fix versioned documentation other than making a new minor release.

Also when a new release is created by a project, it has to be added to the config. There is a script for that, but someone has to run the script and make a PR. We could try to automate the PR creation as part of the release process.

@AlanGreene
Copy link
Member

Sync updated to use release branches to avoid need for minor/patch releases to update docs. Closing this.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/frozen Indicates that an issue or PR should not be auto-closed due to staleness.
Projects
None yet
Development

No branches or pull requests

6 participants