Skip to content

Merge branch 'main' of https://github.com/Tronzit-Veca/Pumpfun-Smart-… #3

Merge branch 'main' of https://github.com/Tronzit-Veca/Pumpfun-Smart-…

Merge branch 'main' of https://github.com/Tronzit-Veca/Pumpfun-Smart-… #3

Workflow file for this run

name: CI/CD Pipeline
on:
push:
branches: [ main, develop ]
pull_request:
branches: [ main ]
jobs:
test:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
cache: 'npm'
- name: Setup Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
override: true
- name: Install dependencies
run: |
npm install
rustup component add rustfmt clippy
- name: Run linting
run: |
npm run lint
cargo fmt --all -- --check
cargo clippy --all-targets --all-features -- -D warnings
- name: Run tests
run: |
anchor test --skip-local-validator
npm test
- name: Build project
run: |
anchor build
npm run build
security:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Run security audit
run: |
npm audit --audit-level moderate
cargo audit
documentation:
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Check documentation
run: |
# Check if README exists and has proper structure
if [ ! -f README.md ]; then
echo "README.md is missing"
exit 1
fi
# Check if API documentation exists
if [ ! -f docs/API.md ]; then
echo "API documentation is missing"
exit 1
fi
# Check if contributing guidelines exist
if [ ! -f CONTRIBUTING.md ]; then
echo "CONTRIBUTING.md is missing"
exit 1
fi
echo "All documentation files present"
deploy:
needs: [test, security, documentation]
runs-on: ubuntu-latest
if: github.ref == 'refs/heads/main'
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: actions/setup-node@v4
with:
node-version: '18'
- name: Deploy to devnet
run: |
echo "Deploying to devnet..."
# Add deployment commands here
echo "Deployment completed"
- name: Create release
uses: actions/create-release@v1
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
tag_name: v${{ github.run_number }}
release_name: Release v${{ github.run_number }}
body: |
## Changes in this Release
- Automated deployment from CI/CD pipeline
- All tests passing
- Security audit completed
- Documentation updated
## Installation
```bash
npm install
anchor build
```
## Testing
```bash
anchor test
npm test
```
draft: false
prerelease: false