--- kind: pipeline type: docker name: default steps: # Frontend - name: web_build image: node:23 volumes: - name: web_app path: /tmp/web_build commands: - cd moneymgr_web - npm install - npm run lint - npm run build - mv dist /tmp/web_build # Backend - name: backend_fetch_deps image: rust volumes: - name: rust_registry path: /usr/local/cargo/registry commands: - cd moneymgr_backend - cargo fetch - name: backend_code_quality image: rust volumes: - name: rust_registry path: /usr/local/cargo/registry depends_on: - backend_fetch_deps commands: - cd moneymgr_backend - rustup component add clippy - cargo clippy -- -D warnings - name: backend_test image: rust volumes: - name: rust_registry path: /usr/local/cargo/registry depends_on: - backend_code_quality commands: - cd moneymgr_backend - cargo test - name: backend_compile image: rust volumes: - name: rust_registry path: /usr/local/cargo/registry - name: web_app path: /tmp/web_build - name: release path: /tmp/release depends_on: - backend_test - web_build commands: - cd moneymgr_backend - mv /tmp/web_build/dist static - cargo build --release - ls -lah target/release/moneymgr_backend - cp target/release/moneymgr_backend /tmp/release # Release - name: gitea_release image: plugins/gitea-release depends_on: - backend_compile when: event: - tag volumes: - name: release path: /tmp/release environment: PLUGIN_API_KEY: from_secret: API_KEY settings: base_url: https://gitea.communiquons.org files: /tmp/release/* checksum: sha512 volumes: - name: rust_registry temp: {} - name: web_app temp: {} - name: release temp: {}