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

feat(devx): Generate and upload references by network for documentation #4554

Open
wants to merge 34 commits into
base: develop
Choose a base branch
from
Open
Show file tree
Hide file tree
Changes from 15 commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
df2fdc5
feat(devx) add workflow to upload generated docs to aws.
lucas-tortora Dec 18, 2024
5904075
add todo
lucas-tortora Dec 18, 2024
ea46087
added script to download iota refs
lucas-tortora Dec 18, 2024
897508e
dprint:
lucas-tortora Dec 18, 2024
9c8c700
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Dec 18, 2024
6fb4fd6
compress docs
lucas-tortora Dec 18, 2024
795000d
Fix workflow
Dr-Electron Dec 19, 2024
8ff7d7f
Update .github/workflows/upload-docs-to-aws.yml
lucas-tortora Dec 19, 2024
7d7f668
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Dec 19, 2024
4e6c154
dprint
lucas-tortora Dec 19, 2024
561ee67
split up iota and external ref downloads.
lucas-tortora Dec 19, 2024
ca9b545
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Jan 13, 2025
a2e6676
fix: fix generated docs path
Dr-Electron Jan 21, 2025
84f8584
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Jan 22, 2025
cbd4afc
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Jan 22, 2025
78fcc7c
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Jan 28, 2025
c09a021
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Jan 30, 2025
287c21a
Remove rust install step
Dr-Electron Jan 31, 2025
bc42c21
Add url
Dr-Electron Jan 31, 2025
0da82c4
Make bucket upload public
Dr-Electron Jan 31, 2025
12f1a6b
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Feb 3, 2025
30a1927
update path
lucas-tortora Feb 3, 2025
4f6eaac
remove generated docs and update gitignore files
lucas-tortora Feb 3, 2025
695876f
fix s3 path
lucas-tortora Feb 4, 2025
5e92ae7
fix upload tar file instead of folder
lucas-tortora Feb 4, 2025
2553654
fix gitignores and get references scripts
lucas-tortora Feb 4, 2025
722931d
fix path
lucas-tortora Feb 4, 2025
5d1bdca
fix ts docs generation
lucas-tortora Feb 4, 2025
f2ce4b4
test
lucas-tortora Feb 4, 2025
3f116df
add gitignore
lucas-tortora Feb 5, 2025
1a349b3
add gitignore
lucas-tortora Feb 5, 2025
4cfaa75
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Feb 5, 2025
439a606
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Feb 5, 2025
79ce331
Merge branch 'develop' into devx/upload-generated-docs-to-aws
lucas-tortora Feb 5, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
63 changes: 63 additions & 0 deletions .github/workflows/upload-docs-to-aws.yml
lucas-tortora marked this conversation as resolved.
Show resolved Hide resolved
Original file line number Diff line number Diff line change
@@ -0,0 +1,63 @@
name: Upload Docs to S3

on:
push:
branches:
- devnet
- testnet

jobs:
build-and-upload-docs:
runs-on: ubuntu-latest
env:
S3_BUCKET: TODO

steps:
- name: Check out repository
uses: actions/checkout@v3

# ----------- Build Rust Docs -----------
- name: Install Rust stable
uses: dtolnay/rust-toolchain@stable
Dr-Electron marked this conversation as resolved.
Show resolved Hide resolved
with:
profile: minimal

- name: Build Rust documentation
run: cargo test --manifest-path crates/iota-framework/Cargo.toml

# ----------- Build TypeScript and GraphQL Docs with pnpm -----------
- name: Set up Node
uses: actions/setup-node@v3
with:
node-version: "22.x"

- name: Install pnpm
run: corepack enable && corepack prepare pnpm@latest --activate

- name: Install dependencies
run: pnpm install

- name: Build SDK and BCS
run: pnpm sdk build && pnpm bcs build

- name: Generate TypeScript docs
run: pnpm --filter iota-docs generate-ts-docs

- name: Generate GraphQl docs
run: pnpm --filter iota-docs generate-graphql-docs

- name: Compress generated docs
run: |
tar czvf ${{ github.ref_name }}.tar.gz generated-docs/*

# ----------- Configure AWS Credentials -----------
- name: Configure AWS Credentials
uses: aws-actions/configure-aws-credentials@v3
with:
aws-access-key-id: ${{ secrets.AWS_ACCESS_KEY_ID }}
aws-secret-access-key: ${{ secrets.AWS_SECRET_ACCESS_KEY }}
aws-region: us-east-1 # Change if needed

# ----------- Upload Docs to S3 -----------
- name: Upload Rust docs to S3
run: aws s3 sync generated-docs s3://$S3_BUCKET/${{ github.ref_name }}.tar.gz --delete
2 changes: 1 addition & 1 deletion crates/iota-framework/tests/build-system-packages.rs
Original file line number Diff line number Diff line change
Expand Up @@ -17,7 +17,7 @@ use move_package::{BuildConfig as MoveBuildConfig, LintFlag};

const CRATE_ROOT: &str = env!("CARGO_MANIFEST_DIR");
const COMPILED_PACKAGES_DIR: &str = "packages_compiled";
const DOCS_DIR: &str = "../../docs/content/references/framework/";
const DOCS_DIR: &str = "../../generated-docs/framework";
const PUBLISHED_API_FILE: &str = "published_api.txt";

#[test]
Expand Down
6 changes: 3 additions & 3 deletions docs/site/docusaurus.config.js
Original file line number Diff line number Diff line change
Expand Up @@ -60,7 +60,7 @@ const config = {
schema:
"../../crates/iota-graphql-rpc/schema.graphql",
rootPath: "../content", // docs will be generated under rootPath/baseURL
baseURL: "references/iota-api/iota-graphql/reference",
baseURL: "../../generated-docs/graphql",
loaders: {
GraphQLFileLoader: "@graphql-tools/graphql-file-loader",
},
Expand Down Expand Up @@ -91,14 +91,14 @@ const config = {
"../../sdk/typescript/src/graphql",
"../../sdk/typescript/src/keypairs/ed25519",
"../../sdk/typescript/src/keypairs/secp256k1",
"../../sdk/typescript/src/keypairs/secp256k1",
"../../sdk/typescript/src/keypairs/secp256r1",
"../../sdk/typescript/src/multisig",
"../../sdk/typescript/src/transactions",
"../../sdk/typescript/src/utils",
"../../sdk/typescript/src/verify"
],
plugin: ["typedoc-plugin-markdown"],
out: "../../docs/content/references/ts-sdk/api/",
out: "../../generated-docs/ts",
githubPages: false,
readme: "none",
hideGenerator: true,
Expand Down
9 changes: 6 additions & 3 deletions docs/site/package.json
Original file line number Diff line number Diff line change
Expand Up @@ -4,9 +4,12 @@
"private": true,
"scripts": {
"docusaurus": "docusaurus",
"dev": "UPDATE=1 cargo test --manifest-path ../../crates/iota-framework/Cargo.toml; docusaurus graphql-to-doc; rm '../content/references/iota-api/iota-graphql/reference/generated.md'; docusaurus start",
"build": "UPDATE=1 cargo test --manifest-path ../../crates/iota-framework/Cargo.toml; docusaurus graphql-to-doc; rm '../content/references/iota-api/iota-graphql/reference/generated.md'; docusaurus build",
"download-references": "git clean -Xdf ../content/references/iota-evm/; ./scripts/get-iota-evm-references.sh; git clean -Xdf ../content/references/iota-identity/; ./scripts/get-iota-identity-references.sh",
"dev": "download-iota-references; docusaurus start",
"build": "download-iota-references; docusaurus build",
"generate-ts-docs": "docusaurus generate-typedoc",
"generate-graphql-docs" : "docusaurus graphql-to-doc; rm '../../generated-docs/graphql/generated.md';",
"download-iota-references": "git clean -Xdf ../content/references/; ./scripts/get-iota-references.sh;",
"download-external-references": "git clean -Xdf ../content/references/iota-evm/; ./scripts/get-iota-evm-references.sh; git clean -Xdf ../content/references/iota-identity/; ./scripts/get-iota-identity-references.sh",
"swizzle": "docusaurus swizzle",
"deploy": "docusaurus deploy",
"clear": "docusaurus clear",
Expand Down
15 changes: 15 additions & 0 deletions docs/site/scripts/get-iota-references.sh
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
#!/bin/sh

# Create temporary directory to work in
mkdir tmp
cd tmp

# Download and copy docs
curl -sL https://s3.eu-central-1.amazonaws.com/files.iota.org/iota-wiki/testnet.tar.gz | tar xzv
cp -Rv ts ../../docs/content/references/ts-sdk/api
cp -Rv graphql ../../docs/content/references/iota-api/iota-graphql
cp -Rv rust ../../docs/content/references/framework

# Return to root and cleanup
cd -
rm -rf tmp
Loading