Skip to content

Commit

Permalink
fix: install my tailcall
Browse files Browse the repository at this point in the history
  • Loading branch information
MedHeikelBouzayene committed Jan 14, 2025
1 parent 580002a commit dcba682
Showing 1 changed file with 210 additions and 0 deletions.
210 changes: 210 additions & 0 deletions .github/workflows/build-tailcall.yml
Original file line number Diff line number Diff line change
@@ -0,0 +1,210 @@
name: Tailcall temp build

on:
workflow_dispatch:
inputs:
build-tailcall:
description: Build Tailcall
required: false
type: boolean
default: true
pull_request:
types:
- labeled
- synchronize
branches:
- main
paths-ignore:
- "**.md"
push:
branches:
- "main"
tags:
- "v*"
paths-ignore:
- "**.md"
release:
types: [published]

permissions:
contents: write
actions: write

concurrency:
group: ${{ github.head_ref || github.run_id }}
cancel-in-progress: true

jobs:
build:
runs-on: ubuntu-latest
steps:
- name: Check architecture
run: uname -m
check_if_build:
name: Check if Build
runs-on: ubuntu-latest

steps:
- uses: actions/checkout@v4
with:
repository: MedHeikelBouzayene/tailcall
ref: fix/graphql_nested_queries

test:
name: Run Tests on linux-x64-gnu
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
repository: MedHeikelBouzayene/tailcall
ref: fix/graphql_nested_queries

- uses: taiki-e/install-action@cargo-llvm-cov

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: "20.11.0"
- name: Install Prettier
run: npm i -g prettier

- name: Install Stable Toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
target: x86_64-unknown-linux-gnu

- name: Run Cargo Test
run: cargo llvm-cov --workspace --all-features --lcov --output-path lcov.info

check-examples:
name: Check Examples
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
repository: MedHeikelBouzayene/tailcall
ref: fix/graphql_nested_queries

- name: Set up Rust
uses: actions-rs/toolchain@v1
with:
toolchain: stable
profile: minimal
override: true

- name: Install Rust
uses: actions-rust-lang/setup-rust-toolchain@v1

- name: Build Project
run: cargo build

- name: Check all examples
run: ./examples/lint.sh

draft_release:
name: Draft Release
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout Current Branch (Fast)
uses: actions/checkout@v4
with:
repository: MedHeikelBouzayene/tailcall
ref: fix/graphql_nested_queries

- id: create_release
uses: release-drafter/release-drafter@v6
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
config-name: release-drafter.yml

- name: Set Output for Later Jobs
id: set_output
run: |
echo "create_release_name=${{ steps.create_release.outputs.name }}" >> $GITHUB_OUTPUT
echo "create_release_id=${{ steps.create_release.outputs.id }}" >> $GITHUB_OUTPUT
outputs:
create_release_name: ${{ steps.set_output.outputs.create_release_name }}
create_release_id: ${{ steps.set_output.outputs.create_release_id }}

release:
name: Release
needs: [test, draft_release]
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
env:
GITHUB_TOKEN: ${{secrets.GITHUB_TOKEN}}
APP_VERSION: ${{ needs.draft_release.outputs.create_release_name }}

steps:
- name: Checkout Current Branch (Fast)
uses: actions/checkout@v4
with:
repository: MedHeikelBouzayene/tailcall
ref: fix/graphql_nested_queries

- name: Install Correct Toolchain
uses: actions-rust-lang/setup-rust-toolchain@v1
with:
target: x86_64-unknown-linux-gnu

- name: Build
env:
APP_VERSION: ${{ needs.draft_release.outputs.create_release_name}}
uses: ClementTsang/[email protected]
with:
use-cross: false
command: build
args: --release --target x86_64-unknown-linux-gnu

- name: Install Node.js
uses: actions/setup-node@v4
with:
node-version: 20.11.0
registry-url: https://registry.npmjs.org

- name: Install dependencies
run: |
cd npm
npm install
- name: Run generate.js script
run: |
cd npm
npm run gen -- --target x86_64-unknown-linux-gnu --version ${{ env.APP_VERSION }} --build linux-x64-gnu --ext '' --libc glibc
- name: Rename Binary with Target Name
run: |
pwd
cp target/x86_64-unknown-linux-gnu/release/tailcall target/x86_64-unknown-linux-gnu/release/tailcall-x86_64-unknown-linux-gnu
- name: Upload x86_64-unknown-linux-gnu Binary
uses: xresloader/upload-to-github-release@v1
with:
release_id: ${{ needs.draft_release.outputs.create_release_id }}
file: target/x86_64-unknown-linux-gnu/release/tailcall-x86_64-unknown-linux-gnu
overwrite: true

semantic_release:
name: Semantic Release
needs: [draft_release, release]
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
APP_VERSION: ${{needs.draft_release.outputs.create_release_name }}
steps:
- name: Publish Release
uses: test-room-7/action-publish-release-drafts@v0
env:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
with:
github-token: ${{ secrets.GITHUB_TOKEN }}
tag-name: ${{needs.draft_release.outputs.create_release_name }}

0 comments on commit dcba682

Please sign in to comment.