-
-
Notifications
You must be signed in to change notification settings - Fork 1
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Merge remote-tracking branch 'origin/gh-pages' into gh-pages
- Loading branch information
Showing
2 changed files
with
91 additions
and
37 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,43 +1,97 @@ | ||
# Simple workflow for deploying static content to GitHub Pages | ||
name: Deploy static content to Pages | ||
name: Build documentation | ||
|
||
on: | ||
# Runs on pushes targeting the default branch | ||
push: | ||
branches: ["gh-pages"] | ||
# If specified, the workflow will be triggered automatically once you push to the `main` branch. | ||
# Replace `main` with your branch’s name | ||
push: | ||
branches: ["gh-pages"] | ||
# Specify to run a workflow manually from the Actions tab on GitHub | ||
workflow_dispatch: | ||
|
||
# Allows you to run this workflow manually from the Actions tab | ||
workflow_dispatch: | ||
|
||
# Sets permissions of the GITHUB_TOKEN to allow deployment to GitHub Pages | ||
# Gives the workflow permissions to clone the repo and create a page deployment | ||
permissions: | ||
contents: read | ||
pages: write | ||
id-token: write | ||
id-token: write | ||
pages: write | ||
|
||
# Allow only one concurrent deployment, skipping runs queued between the run in-progress and latest queued. | ||
# However, do NOT cancel in-progress runs as we want to allow these production deployments to complete. | ||
concurrency: | ||
group: "pages" | ||
cancel-in-progress: false | ||
env: | ||
# Name of module and id separated by a slash | ||
INSTANCE: Samay-docs/hi | ||
# Replace HI with the ID of the instance in capital letters | ||
ARTIFACT: webHelpHI2-all.zip | ||
# Writerside docker image version | ||
DOCKER_VERSION: 2.1.1479-p3869 | ||
# Add the variable below to upload Algolia indexes | ||
# Replace HI with the ID of the instance in capital letters | ||
ALGOLIA_ARTIFACT: algolia-indexes-HI.zip | ||
|
||
jobs: | ||
# Single deploy job since we're just deploying | ||
deploy: | ||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Checkout | ||
uses: actions/checkout@v3 | ||
- name: Setup Pages | ||
uses: actions/configure-pages@v3 | ||
- name: Upload artifact | ||
uses: actions/upload-pages-artifact@v2 | ||
with: | ||
# Upload entire repository | ||
path: './gh-pages' | ||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v2 | ||
build: | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Checkout repository | ||
uses: actions/checkout@v3 | ||
|
||
- name: Build Writerside docs using Docker | ||
uses: JetBrains/writerside-github-action@v4 | ||
with: | ||
instance: ${{ env.INSTANCE }} | ||
artifact: ${{ env.ARTIFACT }} | ||
docker-version: ${{ env.DOCKER_VERSION }} | ||
|
||
- name: Upload documentation | ||
uses: actions/upload-artifact@v3 | ||
with: | ||
name: docs | ||
path: | | ||
artifacts/${{ env.ARTIFACT }} | ||
artifacts/report.json | ||
retention-days: 7 | ||
|
||
# Add the job below and artifacts/report.json on Upload documentation step above if you want to fail the build when documentation contains errors | ||
test: | ||
# Requires build job results | ||
needs: build | ||
runs-on: ubuntu-latest | ||
|
||
steps: | ||
- name: Download artifacts | ||
uses: actions/download-artifact@v1 | ||
with: | ||
name: docs | ||
path: artifacts | ||
|
||
- name: Test documentation | ||
uses: JetBrains/writerside-checker-action@v1 | ||
with: | ||
instance: ${{ env.INSTANCE }} | ||
|
||
deploy: | ||
environment: | ||
name: github-pages | ||
url: ${{ steps.deployment.outputs.page_url }} | ||
# Requires the build job results | ||
needs: test | ||
runs-on: ubuntu-latest | ||
steps: | ||
- name: Download artifact | ||
uses: actions/download-artifact@v3 | ||
with: | ||
name: docs | ||
|
||
- name: Unzip artifact | ||
uses: montudor/action-zip@v1 | ||
with: | ||
args: unzip -qq ${{ env.ARTIFACT }} -d dir | ||
|
||
- name: Setup Pages | ||
uses: actions/configure-pages@v2 | ||
|
||
- name: Upload artifact | ||
uses: actions/upload-pages-artifact@v1 | ||
with: | ||
path: dir | ||
|
||
- name: Deploy to GitHub Pages | ||
id: deployment | ||
uses: actions/deploy-pages@v1 |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1 +1 @@ | ||
<!DOCTYPE html SYSTEM "about:legacy-compat"><html lang="en-US" data-colors-preset="contrast" data-primary-color="#307FFF"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="UTF-8"><meta name="robots" content="noindex"> <meta name="built-on" content="2023-10-19T20:45:21.4384896"><meta name="build-number" content="${buildNumber}"> <title>Overview | Help Instance</title><script id="virtual-toc-data" type="application/json">[{"id":"what-is-samay","level":0,"title":"What is Samay?","anchor":"#what-is-samay"},{"id":"glossary","level":0,"title":"Glossary","anchor":"#glossary"}]</script><script id="topic-shortcuts" type="application/json"></script><link href="https://resources.jetbrains.com/writerside/apidoc/6.1.5-b176/app.css" rel="stylesheet"> <link rel="apple-touch-icon" sizes="180x180" href="https://jetbrains.com/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="https://jetbrains.com/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="https://jetbrains.com/favicon-16x16.png"><link rel="manifest" href="https://jetbrains.com/site.webmanifest"><link rel="mask-icon" href="https://jetbrains.com/safari-pinned-tab.svg" color="#000000"><meta name="msapplication-TileColor" content="#000000"/><meta name="msapplication-TileImage" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-310x310.png"/> <meta name="image" content=""><!-- Open Graph --><meta property="og:title" content="Overview | Help Instance"/><meta property="og:description" content=""/><meta property="og:image" content=""/><meta property="og:site_name" content="Help Instance Help"/><meta property="og:type" content="website"/><meta property="og:locale" content="en_US"/><meta property="og:url" content="overview.html"/><!-- End Open Graph --><!-- Twitter Card --><meta name="twitter:card" content="summary_large_image"><meta name="twitter:site" content=""><meta name="twitter:title" content="Overview | Help Instance"><meta name="twitter:description" content=""><meta name="twitter:creator" content=""><meta name="twitter:image:src" content=""><!-- End Twitter Card --><!-- Schema.org WebPage --><script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "@id": "overview.html#webpage", "url": "overview.html", "name": "Overview | Help Instance", "description": "", "image": "", "inLanguage":"en-US" }</script><!-- End Schema.org --><!-- Schema.org WebSite --><script type="application/ld+json"> { "@type": "WebSite", "@id": "/#website", "url": "/", "name": "Help Instance Help" }</script><!-- End Schema.org --> <!-- Mermaid light/dark themes --> <link rel="stylesheet" type="text/css" href="mermaid.css"> </head> <body data-id="Overview" data-main-title="Overview" data-article-props="{"seeAlsoStyle":"links"}" data-template="article" data-breadcrumbs="" > <div class="wrapper"><main class="panel _main"><header class="panel__header"><div class="container"><h3>Help Instance Help</h3><div class="panel-trigger"></div></div></header><section class="panel__content"><div class="container"><article class="article" data-shortcut-switcher="inactive"><h1 data-toc="Overview" id="Overview.md" >Overview</h1> <p id="8e87aee0_2">Samay is a Java library that provides automatic timezone handling for Spring Boot applications. It allows easy extraction and usage of timezone information from HTTP requests.</p><section class="chapter"><h2 id="what-is-samay" data-toc="what-is-samay">What is Samay?</h2><p id="8e87aee0_3">Samay is designed to simplify timezone handling in Spring Boot web applications. It intercepts incoming HTTP requests, extracts the timezone from a custom header, stores it in a ThreadLocal variable, and makes it available throughout the request lifecycle.</p><p id="8e87aee0_4">This saves developers from having to manually extract and pass around timezone information in their application code. Samay handles this automatically via request interception and context propagation.</p><p id="8e87aee0_5">Some alternatives to Samay include:</p><ul class="list _ul" id="8e87aee0_6" ><li class="list__item" id="8e87aee0_7"><p>Manually extracting timezone on every request</p></li><li class="list__item" id="8e87aee0_8"><p>Passing timezone as a method parameter</p></li><li class="list__item" id="8e87aee0_9"><p>Using session/cookie to store timezone</p></li></ul><p id="8e87aee0_10">Samay provides a cleaner and more automated way to handle time zones.</p></section><section class="chapter"><h2 id="glossary" data-toc="glossary">Glossary</h2><p id="8e87aee0_11"><span class="control" id="8e87aee0_12">Request Interception</span> - Process of intercepting an HTTP request before it reaches the target controller. Useful for cross-cutting concerns like logging, security, etc.</p><p id="8e87aee0_13"><span class="control" id="8e87aee0_14">ThreadLocal</span> — A variable that provides thread-level isolation. Stores different values per thread. Used to propagate context across layers.</p><p id="8e87aee0_15"><span class="control" id="8e87aee0_16">Context Propagation</span> - Passing request-specific data like user ID, timezone, etc across application layers to avoid plumbing everywhere.</p><p id="8e87aee0_17">Let me know if you would like me to expand or modify this overview section further.</p></section><div class="last-modified"> Last modified: 19 October 2023</div><div data-feedback-placeholder="true"></div><div class="navigation-links _bottom"> <a class="navigation-links__next" href="using-samay.html">Using Samay</a> </div></article><div id="disqus_thread"></div></div></section></main></div> <script src="https://resources.jetbrains.com/writerside/apidoc/6.1.5-b176/app.js"></script></body></html> | ||
<!DOCTYPE html SYSTEM "about:legacy-compat"><html lang="en-US" data-colors-preset="contrast" data-primary-color="#307FFF"><head><meta http-equiv="Content-Type" content="text/html; charset=UTF-8"><meta charset="UTF-8"><meta name="robots" content="noindex"> <meta name="built-on" content="2023-10-19T20:45:21.4384896"><meta name="build-number" content="${buildNumber}"> <title>Overview | Help Instance</title><script id="virtual-toc-data" type="application/json">[{"id":"what-is-samay","level":0,"title":"What is Samay?","anchor":"#what-is-samay"},{"id":"glossary","level":0,"title":"Glossary","anchor":"#glossary"}]</script><script id="topic-shortcuts" type="application/json"></script><link href="https://resources.jetbrains.com/writerside/apidoc/6.1.5-b176/app.css" rel="stylesheet"> <link rel="apple-touch-icon" sizes="180x180" href="https://jetbrains.com/apple-touch-icon.png"><link rel="icon" type="image/png" sizes="32x32" href="https://jetbrains.com/favicon-32x32.png"><link rel="icon" type="image/png" sizes="16x16" href="https://jetbrains.com/favicon-16x16.png"><link rel="manifest" href="https://jetbrains.com/site.webmanifest"><link rel="mask-icon" href="https://jetbrains.com/safari-pinned-tab.svg" color="#000000"><meta name="msapplication-TileColor" content="#000000"/><meta name="msapplication-TileImage" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-144x144.png"/><meta name="msapplication-square70x70logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-70x70.png"/><meta name="msapplication-square150x150logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-150x150.png"/><meta name="msapplication-wide310x150logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-310x150.png"/><meta name="msapplication-square310x310logo" content="https://resources.jetbrains.com/storage/ui/favicons/mstile-310x310.png"/> <meta name="image" content=""><!-- Open Graph --><meta property="og:title" content="Overview | Help Instance"/><meta property="og:description" content=""/><meta property="og:image" content=""/><meta property="og:site_name" content="Help Instance Help"/><meta property="og:type" content="website"/><meta property="og:locale" content="en_US"/><meta property="og:url" content="overview.html"/><!-- End Open Graph --><!-- Twitter Card --><meta name="twitter:card" content="summary_large_image"><meta name="twitter:site" content=""><meta name="twitter:title" content="Overview | Help Instance"><meta name="twitter:description" content=""><meta name="twitter:creator" content=""><meta name="twitter:image:src" content=""><!-- End Twitter Card --><!-- Schema.org WebPage --><script type="application/ld+json"> { "@context": "http://schema.org", "@type": "WebPage", "@id": "overview.html#webpage", "url": "overview.html", "name": "Overview | Help Instance", "description": "", "image": "", "inLanguage":"en-US" }</script><!-- End Schema.org --><!-- Schema.org WebSite --><script type="application/ld+json"> { "@type": "WebSite", "@id": "/#website", "url": "/", "name": "Help Instance Help" }</script><!-- End Schema.org --> <!-- Mermaid light/dark themes --> <link rel="stylesheet" type="text/css" href="mermaid.css"> </head> <body data-id="Overview" data-main-title="Overview" data-article-props="{"seeAlsoStyle":"links"}" data-template="article" data-breadcrumbs="" > <div class="wrapper"><main class="panel _main"><header class="panel__header"><div class="container"><h3>Help Instance Help</h3><div class="panel-trigger"></div></div></header><section class="panel__content"><div class="container"><article class="article" data-shortcut-switcher="inactive"><h1 data-toc="Overview" id="Overview.md" >Overview</h1> <p id="8e87aee0_2">Samay is a Java library that provides automatic timezone handling for Spring Boot applications. It allows easy extraction and usage of timezone information from HTTP requests.</p><section class="chapter"><h2 id="what-is-samay" data-toc="what-is-samay">What is Samay?</h2><p id="8e87aee0_3">Samay is designed to simplify timezone handling in Spring Boot web applications. It intercepts incoming HTTP requests, extracts the timezone from a custom header, stores it in a ThreadLocal variable, and makes it available throughout the request lifecycle.</p><p id="8e87aee0_4">This saves developers from having to manually extract and pass around timezone information in their application code. Samay handles this automatically via request interception and context propagation.</p><p id="8e87aee0_5">Some alternatives to Samay include:</p><ul class="list _ul" id="8e87aee0_6" ><li class="list__item" id="8e87aee0_7"><p>Manually extracting timezone on every request</p></li><li class="list__item" id="8e87aee0_8"><p>Passing timezone as a method parameter</p></li><li class="list__item" id="8e87aee0_9"><p>Using session/cookie to store timezone</p></li></ul><p id="8e87aee0_10">Samay provides a cleaner and more automated way to handle time zones.</p></section><section class="chapter"><h2 id="glossary" data-toc="glossary">Glossary</h2><p id="8e87aee0_11"><span class="control" id="8e87aee0_12">Request Interception</span> - Process of intercepting an HTTP request before it reaches the target controller. Useful for cross-cutting concerns like logging, security, etc.</p><p id="8e87aee0_13"><span class="control" id="8e87aee0_14">ThreadLocal</span> — A variable that provides thread-level isolation. Stores different values per thread. Used to propagate context across layers.</p><p id="8e87aee0_15"><span class="control" id="8e87aee0_16">Context Propagation</span> - Passing request-specific data like user ID, timezone, etc across application layers to avoid plumbing everywhere.</p></section><div class="last-modified"> Last modified: 19 October 2023</div><div data-feedback-placeholder="true"></div><div class="navigation-links _bottom"> <a class="navigation-links__next" href="using-samay.html">Using Samay</a> </div></article><div id="disqus_thread"></div></div></section></main></div> <script src="https://resources.jetbrains.com/writerside/apidoc/6.1.5-b176/app.js"></script></body></html> |