Skip to main content
The Deno 2 Release Candidate is here
Learn more

Symfony Pipeline

deno module deno compatibility

A ready-to-use CI/CD Pipeline for Symfony projects.

🚀 Usage

Run the following command in your project:

dagger run fluentci symfony_pipeline

Or, if you want to use it as a template:

fluentci init -t symfony

This will create a .fluentci folder in your project.

Now you can run the pipeline with:

dagger run fluentci .

Jobs

Job Description
phpstan Run PHPStan
phpcs Run PHPCS
twigLint Lint Twig templates
xliffLint Lint XLIFF translations
yamlLint Lint YAML files
doctrineLint Lint Doctrine entities
containerLint Lint Parameters and Services
phpUnit Run PHPUnit

Programmatic usage

You can also use this pipeline programmatically:

import { Client, connect } from "https://esm.sh/@dagger.io/dagger@0.8.1";
import { Dagger } from "https://deno.land/x/symfony_pipeline/mod.ts";

const { 
  phpcs,
  phpstan,
  twigLint,
  xliffLint,
  yamlLint,
  doctrineLint,
  containerLint,
  phpUnit 
} = Dagger;

function pipeline(src = ".") {
  connect(async (client: Client) => {
    await phpcs(client, src);
    await phpstan(client, src);
    await twigLint(client, src);
    await xliffLint(client, src);
    await yamlLint(client, src);
    await doctrineLint(client, src);
    await containerLint(client, src);
    await phpUnit(client, src);
  });
}

pipeline();