-
-
Notifications
You must be signed in to change notification settings - Fork 2
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
feat: generate a library and diagrams
- Loading branch information
Showing
98 changed files
with
8,939 additions
and
105 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 |
---|---|---|
@@ -0,0 +1,4 @@ | ||
.* | ||
scripts/ | ||
target/ | ||
test/ |
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 |
---|---|---|
@@ -0,0 +1,7 @@ | ||
# Contribution guide | ||
|
||
We appreciate your thought to contribute to open source. :heart: | ||
|
||
For little fixes or improvements, feel free to submit pull requests with commit messages respecting the [Conventional Commits specification](https://www.conventionalcommits.org/en/v1.0.0/). | ||
|
||
For the other changes, feel free to fill a [GitHub Issue](https://github.com/tmorin/plantuml-generator/issues) first. |
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 |
---|---|---|
@@ -0,0 +1,12 @@ | ||
# These are supported funding model platforms | ||
|
||
github: # Replace with up to 4 GitHub Sponsors-enabled usernames e.g., [user1, user2] | ||
patreon: # Replace with a single Patreon username | ||
open_collective: # Replace with a single Open Collective username | ||
ko_fi: # Replace with a single Ko-fi username | ||
tidelift: # Replace with a single Tidelift platform-name/package-name e.g., npm/babel | ||
community_bridge: # Replace with a single Community Bridge project-name e.g., cloud-foundry | ||
liberapay: thibault.morin | ||
issuehunt: # Replace with a single IssueHunt username | ||
otechie: # Replace with a single Otechie username | ||
custom: # Replace with up to 4 custom sponsorship URLs e.g., ['link1', 'link2'] |
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 |
---|---|---|
@@ -0,0 +1,228 @@ | ||
name: Continuous-Integration | ||
|
||
on: [ push, pull_request ] | ||
|
||
jobs: | ||
|
||
Lint: | ||
name: Lint | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: "Cache cargo stuff" | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.cargo/bin/ | ||
~/.cargo/registry/index/ | ||
~/.cargo/registry/cache/ | ||
~/.cargo/git/db/ | ||
target/ | ||
key: ${{ runner.os }}-lint-${{ hashFiles('**/Cargo.lock') }} | ||
- name: "Install the toolchain" | ||
uses: actions-rs/toolchain@v1 | ||
with: | ||
profile: minimal | ||
toolchain: stable | ||
components: clippy | ||
- name: "Check with clippy" | ||
uses: actions-rs/cargo@v1 | ||
with: | ||
command: clippy | ||
args: -- -D warnings | ||
|
||
Test: | ||
name: Test | ||
runs-on: ubuntu-20.04 | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: "Install dependencies" | ||
run: | | ||
sudo apt-get install pkg-config libssl-dev openjdk-11-jre graphviz | ||
sudo snap install inkscape | ||
shell: bash | ||
- name: "Cache cargo stuff" | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.cargo/bin/ | ||
~/.cargo/registry/index/ | ||
~/.cargo/registry/cache/ | ||
~/.cargo/git/db/ | ||
target/ | ||
key: ${{ runner.os }}-test-${{ hashFiles('**/Cargo.lock') }} | ||
- name: "Install the toolchain" | ||
uses: actions-rs/toolchain@v1 | ||
with: | ||
profile: minimal | ||
toolchain: stable | ||
- name: "Perform the tests" | ||
uses: actions-rs/cargo@v1 | ||
with: | ||
command: test | ||
|
||
Binary: | ||
name: Binary | ||
runs-on: ubuntu-20.04 | ||
strategy: | ||
matrix: | ||
include: | ||
- architecture: aarch64 | ||
target: aarch64-unknown-linux-gnu | ||
- architecture: x86_64 | ||
target: x86_64-unknown-linux-gnu | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: "Install the dependencies" | ||
run: sudo apt-get install pkg-config libssl-dev | ||
shell: bash | ||
- name: "Cache cargo stuff" | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.cargo/bin/ | ||
~/.cargo/registry/index/ | ||
~/.cargo/registry/cache/ | ||
~/.cargo/git/db/ | ||
target/ | ||
key: ${{ runner.os }}-binary-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }} | ||
- name: "Install the toolchain" | ||
uses: actions-rs/toolchain@v1 | ||
with: | ||
profile: minimal | ||
toolchain: stable | ||
target: ${{ matrix.target }} | ||
override: true | ||
- name: "Build the binary" | ||
uses: actions-rs/cargo@v1 | ||
with: | ||
use-cross: true | ||
command: build | ||
args: --release --target=${{ matrix.target }} --features vendored-openssl | ||
- name: "Archive the binary" | ||
run: tar czf ${{ matrix.architecture }}_plantuml-generator.tar.gz target/${{ matrix.target }}/release/plantuml-generator | ||
- name: "Upload the binary" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: ${{ matrix.architecture }}_plantuml-generator | ||
path: ${{ matrix.architecture }}_plantuml-generator.tar.gz | ||
# - name: "Publish the crate" | ||
# if: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
# uses: actions-rs/cargo@v1 | ||
# with: | ||
# use-cross: true | ||
# command: publish | ||
# args: --target=${{ matrix.target }} --features vendored-openssl --token ${{ secrets.CRATEIO_TOKEN }} | ||
|
||
DebianPackage: | ||
name: Debian Package | ||
runs-on: ubuntu-20.04 | ||
strategy: | ||
matrix: | ||
include: | ||
- architecture: x86_64 | ||
target: x86_64-unknown-linux-gnu | ||
steps: | ||
- uses: actions/checkout@v2 | ||
- name: "Install the dependencies" | ||
run: sudo apt-get install build-essential pkg-config dpkg libc-bin libssl-dev liblzma-dev | ||
shell: bash | ||
- name: "Cache cargo stuff" | ||
uses: actions/cache@v2 | ||
with: | ||
path: | | ||
~/.cargo/bin/ | ||
~/.cargo/registry/index/ | ||
~/.cargo/registry/cache/ | ||
~/.cargo/git/db/ | ||
target/ | ||
key: ${{ runner.os }}-debian-${{ matrix.target }}-${{ hashFiles('**/Cargo.lock') }} | ||
- name: "Install the toolchain" | ||
uses: actions-rs/toolchain@v1 | ||
with: | ||
profile: minimal | ||
toolchain: stable | ||
target: ${{ matrix.target }} | ||
override: true | ||
- name: "Install cargo-deb" | ||
run: cargo install cargo-deb -q || true | ||
- name: "Build the deb package" | ||
run: cargo deb --target=${{ matrix.target }} -- --features vendored-openssl | ||
- name: "Upload the deb package" | ||
uses: actions/upload-artifact@v2 | ||
with: | ||
name: ${{ matrix.architecture }}_plantuml-generator | ||
path: target/${{ matrix.target }}/debian/*.deb | ||
|
||
DockerImage: | ||
name: Docker Image | ||
runs-on: ubuntu-20.04 | ||
needs: [ Lint, Test ] | ||
steps: | ||
- uses: actions/checkout@v1 | ||
- name: "Set up QEMU" | ||
uses: docker/setup-qemu-action@v1 | ||
- name: "Login to Docker Hub" | ||
uses: docker/login-action@v1 | ||
with: | ||
username: ${{ secrets.DOCKER_USERNAME }} | ||
password: ${{ secrets.DOCKER_PASSWORD }} | ||
- name: "Set up Docker Buildx" | ||
uses: docker/setup-buildx-action@v1 | ||
with: | ||
install: true | ||
- name: "Inject slug/short variables" | ||
uses: rlespinasse/github-slug-action@v3.x | ||
- name: "Build and push branches" | ||
if: ${{ ! startsWith(github.ref, 'refs/tags/') }} | ||
uses: docker/build-push-action@v2 | ||
with: | ||
push: true | ||
platforms: linux/amd64 | ||
tags: | | ||
thibaultmorin/plantuml-generator:${{ env.GITHUB_REF_SLUG }} | ||
build-args: | | ||
git_sha=${{ github.sha }} | ||
- name: "Process version of the tag" | ||
if: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
id: version | ||
uses: ncipollo/semantic-version-action@v1 | ||
- name: "Build and push tags" | ||
if: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
uses: docker/build-push-action@v2 | ||
with: | ||
push: true | ||
platforms: linux/amd64 | ||
tags: | | ||
thibaultmorin/plantuml-generator:${{ steps.version.outputs.major }}.${{ steps.version.outputs.minor }}.${{ steps.version.outputs.patch }} | ||
thibaultmorin/plantuml-generator:${{ steps.version.outputs.major }}.${{ steps.version.outputs.minor }} | ||
thibaultmorin/plantuml-generator:${{ steps.version.outputs.major }} | ||
build-args: | | ||
git_sha=${{ github.sha }} | ||
GithubRelease: | ||
name: Github Release | ||
runs-on: ubuntu-20.04 | ||
needs: [ Lint, Test, Binary, DebianPackage ] | ||
if: ${{ startsWith(github.ref, 'refs/tags/') }} | ||
steps: | ||
- name: "Download all artifacts" | ||
uses: actions/download-artifact@v2 | ||
with: | ||
path: artifacts | ||
- name: "List artifacts" | ||
run: ls -R | ||
working-directory: artifacts | ||
- name: "Create the changelog" | ||
id: build_changelog | ||
uses: mikepenz/release-changelog-builder-action@v1 | ||
env: | ||
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }} | ||
- name: "Create the release" | ||
uses: ncipollo/release-action@v1 | ||
with: | ||
allowUpdates: true | ||
artifacts: "artifacts/**/*.tar.gz,artifacts/**/*.deb" | ||
omitName: true | ||
body: ${{steps.github_release.outputs.changelog}} | ||
token: ${{ secrets.GITHUB_TOKEN }} |
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,104 +1,3 @@ | ||
# Logs | ||
logs | ||
*.log | ||
npm-debug.log* | ||
yarn-debug.log* | ||
yarn-error.log* | ||
lerna-debug.log* | ||
|
||
# Diagnostic reports (https://nodejs.org/api/report.html) | ||
report.[0-9]*.[0-9]*.[0-9]*.[0-9]*.json | ||
|
||
# Runtime data | ||
pids | ||
*.pid | ||
*.seed | ||
*.pid.lock | ||
|
||
# Directory for instrumented libs generated by jscoverage/JSCover | ||
lib-cov | ||
|
||
# Coverage directory used by tools like istanbul | ||
coverage | ||
*.lcov | ||
|
||
# nyc test coverage | ||
.nyc_output | ||
|
||
# Grunt intermediate storage (https://gruntjs.com/creating-plugins#storing-task-files) | ||
.grunt | ||
|
||
# Bower dependency directory (https://bower.io/) | ||
bower_components | ||
|
||
# node-waf configuration | ||
.lock-wscript | ||
|
||
# Compiled binary addons (https://nodejs.org/api/addons.html) | ||
build/Release | ||
|
||
# Dependency directories | ||
node_modules/ | ||
jspm_packages/ | ||
|
||
# TypeScript v1 declaration files | ||
typings/ | ||
|
||
# TypeScript cache | ||
*.tsbuildinfo | ||
|
||
# Optional npm cache directory | ||
.npm | ||
|
||
# Optional eslint cache | ||
.eslintcache | ||
|
||
# Microbundle cache | ||
.rpt2_cache/ | ||
.rts2_cache_cjs/ | ||
.rts2_cache_es/ | ||
.rts2_cache_umd/ | ||
|
||
# Optional REPL history | ||
.node_repl_history | ||
|
||
# Output of 'npm pack' | ||
*.tgz | ||
|
||
# Yarn Integrity file | ||
.yarn-integrity | ||
|
||
# dotenv environment variables file | ||
.env | ||
.env.test | ||
|
||
# parcel-bundler cache (https://parceljs.org/) | ||
.cache | ||
|
||
# Next.js build output | ||
.next | ||
|
||
# Nuxt.js build / generate output | ||
.nuxt | ||
dist | ||
|
||
# Gatsby files | ||
.cache/ | ||
# Comment in the public line in if your project uses Gatsby and *not* Next.js | ||
# https://nextjs.org/blog/next-9-1#public-directory-support | ||
# public | ||
|
||
# vuepress build output | ||
.vuepress/dist | ||
|
||
# Serverless directories | ||
.serverless/ | ||
|
||
# FuseBox cache | ||
.fusebox/ | ||
|
||
# DynamoDB Local files | ||
.dynamodb/ | ||
|
||
# TernJS port file | ||
.tern-port | ||
/.idea | ||
/.cache | ||
/target |
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 |
---|---|---|
@@ -0,0 +1,5 @@ | ||
# Changelog | ||
|
||
## Unreleased (2021-06-10) | ||
|
||
### Features |
Oops, something went wrong.