Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
76 commits
Select commit Hold shift + click to select a range
8738443
Init project
taorepoara Aug 13, 2022
c4127d0
feat: Template check
taorepoara Aug 13, 2022
33d99e2
fix: Name not needed
taorepoara Aug 13, 2022
2ec4cca
docs: First part
taorepoara Aug 13, 2022
72555b4
feat: Only the last commit of the main branch
taorepoara Aug 13, 2022
b4ebd7a
feat: Implement build command (#4)
taorepoara Aug 18, 2022
7cf853f
ci: Configure the GitHub Actions (#6)
taorepoara Sep 5, 2022
ba02afa
feat: Start/stop commands (#5)
jonas-martinez Sep 7, 2022
d530828
ci: Fix cargo publish
taorepoara Sep 7, 2022
3c643a2
feat: Add logs command (#14)
taorepoara Sep 12, 2022
098288b
feat: Set custom name to the app image (#12)
taorepoara Sep 12, 2022
87d09d6
feat: Add the mongo service in the docker-compose (#11)
taorepoara Sep 16, 2022
df797a4
feat: Add command for dockerfile generation (#23)
jonas-martinez Sep 26, 2022
e18e7cf
Remove volumes on stop command (#32)
hsteinmueller Oct 4, 2022
3da7f3d
fix(deps): Dofigen update (#37)
taorepoara Oct 7, 2022
cc4bc8d
feat: add expose options (#38)
Oct 10, 2022
6390539
feat: Create the dev sub-command (#40)
taorepoara Oct 11, 2022
db0a2a3
feat: Use Ctrl + C to stop dev mode properly (#41)
taorepoara Oct 12, 2022
28a8a31
feat: reduce healthcheck (#39)
Oct 12, 2022
d7a83ec
feat: Handle interactive commands (#42)
taorepoara Oct 14, 2022
4eac715
feat: remove timeout (#43)
Oct 15, 2022
c1dd07c
feat: Continue interactive command (#45)
taorepoara Oct 18, 2022
5548115
feat: Interactive stop command (#44)
taorepoara Oct 18, 2022
ab81d24
feat: Reload interactive command (#46)
taorepoara Oct 18, 2022
38bf172
feat: add devtool healthcheck (#49)
Oct 24, 2022
18fcaa8
feat: Update Docker images command (#50)
taorepoara Oct 26, 2022
da980ce
feat: MongoDB URL to HOSTNAME (#74)
jonas-martinez Jan 3, 2023
548aace
docs: Set the lenra_cli the main repo (#119)
taorepoara Jan 4, 2023
cd9b6fa
feat: check template command (#58)
jonas-martinez Jan 4, 2023
1ba2d08
build(deps): bump env_logger from 0.9.3 to 0.10.0 (#121)
dependabot[bot] Jan 4, 2023
fe41ec1
build(deps): bump ureq from 2.5.0 to 2.6.1 (#122)
dependabot[bot] Jan 4, 2023
795f097
build(deps): bump open from 1.7.1 to 3.2.0 (#124)
dependabot[bot] Jan 4, 2023
14617fd
build(deps): bump docker-compose-types from 0.2.4 to 0.3.1 (#123)
dependabot[bot] Jan 4, 2023
3de1721
feat: Non root user for app (#126)
taorepoara Jan 5, 2023
dae6c62
feat!: Docker images in dev config (#131)
taorepoara Jan 6, 2023
71f48f5
feat: Define app memory limit (#127)
taorepoara Jan 6, 2023
8d9209b
ci: Binary in root dir of tar archives (#137)
taorepoara Jan 10, 2023
5964c0b
build(deps): bump async-trait from 0.1.60 to 0.1.61 (#134)
dependabot[bot] Jan 10, 2023
f4e4184
build(deps): bump regex from 1.7.0 to 1.7.1 (#135)
dependabot[bot] Jan 10, 2023
8ac6c91
build(deps): bump tokio from 1.23.0 to 1.24.1 (#136)
dependabot[bot] Jan 10, 2023
a5df28b
build(deps): bump rustyline from 10.0.0 to 10.1.0 (#142)
dependabot[bot] Jan 19, 2023
b3c1d70
build(deps): bump ureq from 2.6.1 to 2.6.2 (#141)
dependabot[bot] Jan 19, 2023
ccc3889
feat: Interactive command shortcurts (#143)
taorepoara Jan 24, 2023
8c8883c
feat: suppress_lock for http mode (#189)
taorepoara Feb 24, 2023
3ab5964
fix: Normalize image tag (#201)
taorepoara Mar 9, 2023
18a8df4
build(deps): bump async-trait from 0.1.61 to 0.1.68 (#207)
dependabot[bot] Apr 1, 2023
baccb80
build(deps): bump serde_yaml from 0.9.16 to 0.9.19 (#199)
dependabot[bot] Apr 1, 2023
c180df9
Revert "build(deps): bump async-trait from 0.1.61 to 0.1.68" (#213)
taorepoara Apr 1, 2023
821a12e
build(deps): bump tokio from 1.24.1 to 1.27.0 (#210)
dependabot[bot] Apr 1, 2023
e46ec75
build(deps): Upgrade async-trat to 0.1.68
taorepoara Apr 3, 2023
ee40224
build(deps): bump chrono from 0.4.23 to 0.4.24 (#215)
dependabot[bot] Apr 4, 2023
75d6654
docs: Remove Nesqwik from default assignment in bug template (#204)
Nesqwik Apr 4, 2023
faec785
build(deps): bump dirs from 4.0.0 to 5.0.0 (#217)
dependabot[bot] Apr 4, 2023
cca85de
build(deps): bump serde from 1.0.152 to 1.0.159 (#216)
dependabot[bot] Apr 4, 2023
6140e9d
feat!: Upgrade command (#211)
taorepoara Apr 4, 2023
f17390e
docs: Funding button (#219)
taorepoara Apr 4, 2023
b18c805
docs: HTML documentation generation (#221)
taorepoara Apr 7, 2023
1195c34
ci: Fix semantic release
taorepoara Apr 7, 2023
7ca42a3
feat: add debug config in lenra.yml (#203)
shiipou Apr 7, 2023
3d53c82
fix: Doc page names
taorepoara Apr 7, 2023
5a63736
fix: Docs
taorepoara Apr 7, 2023
c3d203a
build(deps): bump docker-compose-types from 0.4.0 to 0.4.1 (#225)
dependabot[bot] Apr 17, 2023
0bf96b7
build(deps): bump serde_json from 1.0.91 to 1.0.96 (#226)
dependabot[bot] Apr 17, 2023
f3d58d6
Delete FUNDING.yml
taorepoara Apr 17, 2023
a327c07
build(deps): bump thiserror from 1.0.38 to 1.0.40 (#223)
dependabot[bot] Apr 17, 2023
5d6d91a
fix: Template clone and upgrade (#222)
taorepoara Apr 18, 2023
a13b2e8
Update README.md (#236)
Alienor-Lenra Apr 22, 2023
80e5d5e
build(deps): bump serde from 1.0.159 to 1.0.163 (#262)
dependabot[bot] May 23, 2023
c4bb390
build(deps): bump regex from 1.7.1 to 1.8.2 (#265)
dependabot[bot] May 23, 2023
56571bd
feat: Split devtool web and API ports (#267)
taorepoara May 30, 2023
718cc6c
feat!: Use topics to list Lenra templates en GitHub (#295)
taorepoara Jul 24, 2023
a24416c
feat!: Commands refactor to make it more user friendly (#299)
taorepoara Jul 25, 2023
f4f8e0d
feat: Expose oauth port (#303)
taorepoara Jul 27, 2023
a1adc1e
build(deps): bump strum from 0.24.1 to 0.25.0 (#300)
dependabot[bot] Sep 13, 2023
9b47225
feat: Handle lenra app path in the config (#317)
taorepoara Sep 15, 2023
ffeefb0
build(deps): bump clap from 3.2.25 to 4.4.4
dependabot[bot] Sep 18, 2023
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
52 changes: 52 additions & 0 deletions .github/ISSUE_TEMPLATE/bug_report.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,52 @@
name: Bug Report
description: Send a bug report
title: "[Bug]: "
labels: ["bug", "triage"]
assignees:
- taorepoara
body:
- type: markdown
attributes:
value: |
Thanks for taking the time to fill out this bug report!
- type: textarea
id: what-happened
attributes:
label: What happened?
description: Also tell us, what did you expect to happen?
placeholder: Tell us what you see!
value: "A bug happened!"
validations:
required: true
- type: dropdown
id: browsers
attributes:
label: What browsers are you seeing the problem on?
multiple: true
options:
- Firefox
- Chrome (or chrome-based)
- Safari
- Microsoft Edge
- Other (specify above)
- type: input
id: version
attributes:
label: Version
description: What version of our software are you running?
validations:
required: false
- type: textarea
id: logs
attributes:
label: Relevant log output
description: Please copy and paste any relevant log output. This will be automatically formatted into code, so no need for backticks.
render: Shell
# - type: checkboxes
# id: terms
# attributes:
# label: Code of Conduct
# description: By submitting this issue, you agree to follow our [Code of Conduct](https://example.com)
# options:
# - label: I agree to follow this project's Code of Conduct
# required: true
6 changes: 6 additions & 0 deletions .github/ISSUE_TEMPLATE/config.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@

blank_issues_enabled: true
contact_links:
- name: Feature request
url: https://github.com/orgs/lenra-io/discussions/categories/ideas?discussions_q=category%3AIdeas+is%3Aunlocked
about: Please send your feature request in the discussion tab !
26 changes: 26 additions & 0 deletions .github/ISSUE_TEMPLATE/task.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
---
name: Task
about: Create a new task. Technical task should be small enough to be done by only
one person in a reasonable time.
title: "[Task] "
labels: enhancement
assignees: ''

---

## What should be done
Describe the task and scope...

## Technical recommandation
Any technical recommandation or specific warning about this task (if needed)
- Security issue to be warned of
- Complexity issue

## Ecological concerns
What can be done to improve the ecological impact of this task ?
- Can we minimize the data sent to the network ?
- Are data stored ? Can we minimize the amount of stored data ?
- Is it CPU-intensive ? Can we reduce the CPU charge ?
- Is it RAM-intensive ? Can we reduce the RAM load ?

## Is this task linked with any other ?
11 changes: 11 additions & 0 deletions .github/dependabot.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# To get started with Dependabot version updates, you'll need to specify which
# package ecosystems to update and where the package manifests are located.
# Please see the documentation for all configuration options:
# https://docs.github.com/github/administering-a-repository/configuration-options-for-dependency-updates

version: 2
updates:
- package-ecosystem: "cargo" # See documentation for possible values
directory: "/" # Location of package manifests
schedule:
interval: "weekly"
258 changes: 258 additions & 0 deletions .github/workflows/build_ci.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,258 @@
name: Rust

on:
push:
branches:
- main
- beta
paths-ignore:
- '*.md'
pull_request:
paths-ignore:
- '*.md'

env:
CARGO_TERM_COLOR: always

jobs:
get-next-version:
name: Get next version
runs-on: ubuntu-20.04
continue-on-error: true # must be allow to fail
timeout-minutes: 2
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Setup Node.js
uses: actions/setup-node@v3
with:
node-version: 16


- id: get-next-version
name: Get next version
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx -p conventional-changelog-conventionalcommits@5 -p @semantic-release/git -p semantic-release-export-data -p semantic-release@19 semantic-release --dry-run

outputs:
new-release-published: ${{ steps.get-next-version.outputs.new-release-published }}
new-release-version: ${{ steps.get-next-version.outputs.new-release-version }}

style:
name: Check Style
runs-on: ubuntu-20.04
timeout-minutes: 2
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
components: rustfmt
profile: minimal
override: true

- name: cargo fmt -- --check
uses: actions-rs/cargo@v1
with:
command: fmt
args: --all -- --check

test:
name: Test
needs: [style]
runs-on: ubuntu-20.04
timeout-minutes: 5
steps:
- name: Checkout
uses: actions/checkout@v1

- name: Install rust
uses: actions-rs/toolchain@v1
with:
toolchain: nightly
profile: minimal
override: true

- name: Build debug
uses: actions-rs/cargo@v1
with:
command: build
args: --verbose

- name: Test
uses: actions-rs/cargo@v1
with:
command: test
args: --verbose

build:
name: Build ${{ matrix.os }} ${{ matrix.arch }}
needs: [test, get-next-version]
runs-on: "${{ matrix.runner }}"
env:
VERSION: ${{ needs.get-next-version.outputs.new-release-version }}
timeout-minutes: 20
strategy:
matrix: # Need to find what's the best target for `x86-x64-linux` and remove the others (gnu or musl)
include:
- target: aarch64-unknown-linux-musl
os: linux
arch: aarch64
runner: ubuntu-20.04
- target: x86_64-unknown-linux-musl
os: linux
arch: x86_64
runner: ubuntu-20.04
- target: x86_64-pc-windows-msvc
os: windows
arch: x86_64
runner: windows-2022
file_extension: '.exe'
# - target: aarch64-pc-windows-msvc
# os: windows
# arch: aarch64
# runner: windows-2022
# file_extension: '.exe'
- target: x86_64-apple-darwin
os: macos
arch: x86_64
runner: macos-11
- target: aarch64-apple-darwin
os: macos
arch: aarch64
runner: macos-11
steps:
- name: Checkout
uses: actions/checkout@v3

- name: Install rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true
target: ${{ matrix.target }}

- name: Install cargo-edit
uses: actions-rs/cargo@v1
with:
command: install
args: cargo-edit

- name: Set version
uses: actions-rs/cargo@v1
with:
command: set-version
args: ${{ env.VERSION }}

- name: Build target
uses: actions-rs/cargo@v1
with:
use-cross: true
command: build
args: --release --target ${{ matrix.target }}

- name: Zip
if: ${{ matrix.os == 'windows' }}
shell: pwsh
run: Compress-Archive "target/${{ matrix.target }}/release/lenra${{ matrix.file_extension }}" "lenra-${{ matrix.os }}-${{ matrix.arch }}.zip"
- name: Zip
if: ${{ matrix.os != 'windows' }}
shell: bash
run: tar -C "target/${{ matrix.target }}/release" -czf "lenra-${{ matrix.os }}-${{ matrix.arch }}.tar.gz" "lenra${{ matrix.file_extension }}"

- name: Upload
uses: actions/upload-artifact@v3
with:
name: lenra-${{ matrix.os }}-${{ matrix.arch }}
path: lenra-${{ matrix.os }}-${{ matrix.arch }}.*

generate_doc_artifact:
name: Generate doc artifact
runs-on: ubuntu-latest
permissions:
contents: read
packages: read
timeout-minutes: 10
steps:
- name: Checkout
uses: actions/checkout@v2
- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: "16"
- name: Setup node deps
run: |
cd docs-page-builder/
npm install
npm run build
- name: Compress tar.gz
run: |
cd docs-page-builder/build/
tar czvf lenra-cli-docs.tar.gz *
mv lenra-cli-docs.tar.gz ../..
- name: Compress zip
run: |
cd docs-page-builder/build/
zip -r lenra-cli-docs.zip *
mv lenra-cli-docs.zip ../..
- name: Documentation artifact
uses: actions/upload-artifact@v3
with:
name: lenra-cli-docs
path: |
lenra-cli-docs.tar.gz
lenra-cli-docs.zip

publish:
name: publish
needs: [build, generate_doc_artifact, get-next-version]
if: github.ref_name == 'main' || github.ref_name == 'beta' || github.ref_name == 'alpha'
runs-on: ubuntu-latest
env:
VERSION: ${{ needs.get-next-version.outputs.new-release-version }}
timeout-minutes: 8
steps:
- name: Checkout
uses: actions/checkout@v3

- name: download-artifacts
uses: actions/download-artifact@v3
with:
path: artifacts/

- name: Setup Node.js
uses: actions/setup-node@v2
with:
node-version: "18"

- id: release
name: Release
shell: bash
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
run: npx --force -p conventional-changelog-conventionalcommits@5 -p @semantic-release/git -p semantic-release-export-data -p https://github.com/Tlepel/semantic-release.git#fix-versions-share-head semantic-release

- name: Install cargo-edit
if: ${{ steps.release.outputs.new-release-published }}
uses: actions-rs/cargo@v1
with:
command: install
args: cargo-edit

- name: Set version
if: ${{ steps.release.outputs.new-release-published }}
uses: actions-rs/cargo@v1
with:
command: set-version
args: ${{ env.VERSION }}

- name: Publish cargo
shell: bash
if: ${{ steps.release.outputs.new-release-published }}
run: cargo publish --allow-dirty --token "${{ secrets.CARGO_TOKEN }}"
2 changes: 2 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
@@ -0,0 +1,2 @@
.vscode
/target
19 changes: 19 additions & 0 deletions .releaserc.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,19 @@
---
branches:
- "+([0-9])?(.{+([0-9]),x}).x"
- main
- name: beta
prerelease: true
plugins:
- - "@semantic-release/commit-analyzer"
- preset: conventionalcommits
- - "@semantic-release/release-notes-generator"
- preset: conventionalcommits
- - "@semantic-release/github"
- assets:
- path: artifacts/*/*
- path: lenra-cli-docs/lenra-cli-docs.zip
name: lenra-cli-docs-${nextRelease.gitTag}.zip
- path: lenra-cli-docs/lenra-cli-docs.tar.gz
name: lenra-cli-docs-${nextRelease.gitTag}.tar.gz
- - "semantic-release-export-data"
Loading