# ecosystem-ci-prototype

> Prototype for a CLI for Nx ecosystem CI: https://github.com/nrwl/nx-ecosystem-ci/tree/main

Latest version **0.6.0** (published 2023-10-17) · 0 weekly downloads

## Install

```sh
npm install ecosystem-ci-prototype
pnpm add ecosystem-ci-prototype
yarn add ecosystem-ci-prototype
bun add ecosystem-ci-prototype
```

Provides the command `ecosystem-ci-prototype`.

## Health

**Score 25/100 (F)** — status: abandoned.

Positive: has types; esm support; no vulnerabilities.

Warnings: low downloads; pre 1.0.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 0.6.0 |
| Published | 2023-10-17 |
| First published | 2023-10-17 |
| Weekly downloads | 0 |
| TypeScript types | bundled |
| Module format | ESM + CommonJS |
| Dependencies | 9 |
| Unpacked size | 60.9 KB |
| Known vulnerabilities | 0 (+1 in 1 direct dependencies) |
| Install scripts | no |
| Maintainers | psybercity |

## Links

- npm: https://www.npmjs.com/package/ecosystem-ci-prototype
- npm.io page: https://npm.io/package/ecosystem-ci-prototype

## Dependencies (9)

- [fs](https://npm.io/package/fs.md) ^0.0.1-security
- [cac](https://npm.io/package/cac.md) ^6.7.14
- [path](https://npm.io/package/path.md) ^0.12.7
- [execa](https://npm.io/package/execa.md) ^8.0.1
- [tslib](https://npm.io/package/tslib.md) ^2.3.0
- [semver](https://npm.io/package/semver.md) ^7.5.4
- [process](https://npm.io/package/process.md) ^0.11.10
- [@antfu/ni](https://npm.io/package/@antfu/ni.md) ^0.21.8
- [@actions/core](https://npm.io/package/@actions/core.md) ^1.10.1

## Recent versions

- 0.6.0 (latest) — 2023-10-17
- 0.5.0 (next) — 2023-10-17
- 0.4.0 — 2023-10-17
- 0.3.0 — 2023-10-17
- 0.2.0 — 2023-10-17
- 0.1.7 — 2023-10-17
- 0.1.6 — 2023-10-17
- 0.1.5 — 2023-10-17
- 0.1.4 — 2023-10-17
- 0.1.3 — 2023-10-17
- 0.1.2 — 2023-10-17
- 0.1.1 — 2023-10-17
- 0.1.0 — 2023-10-17
- 0.0.3 — 2023-10-17
- 0.0.2 — 2023-10-17
- … 1 more at https://npm.io/package/ecosystem-ci-prototype/versions

## README

# Nx Ecosystem CI cli prototype

Prototype for a CLI for Nx ecosystem CI: https://github.com/nrwl/nx-ecosystem-ci/tree/main

Based on Vite Ecosystem CI: https://github.com/vitejs/vite-ecosystem-ci

```shell
npx ecosystem-ci-prototype
```

npm: https://www.npmjs.com/package/ecosystem-ci-prototype

## Purpose

The purpose of this tool is to keep the ecosystem ci functionality into one place (rather that different clones per tool), and have the individual tools be able to invoke it, to test the integrations.

The way this would work would be the following scenario:

    I am a maintainer of a package that uses, for example, vite.

    I want to test the integration of my package with the latest changes on vite.

    Instead of adding a new test file under `vite-ecosystem-ci`, I just run `npx ecosystem-ci-prototype --ecosystem=vite` on my repo, and this runs the tests it's supposed to run.

Similarly, for Nx:

    I am a maintainer of a package that uses nx.

    I want to test the integration of my package with the latest changes on nx.

    Instead of adding a new test file under `nx-ecosystem-ci`, I just run `npx ecosystem-ci-prototype --ecosystem=nx` on my repo, and this runs the tests it's supposed to run.

Right now the code is tailored to run for just `nx` and `vite`, copying the logic from [nx-ecosystem-ci](https://github.com/nrwl/nx-ecosystem-ci/tree/main) and [vite-ecosystem-ci](https://github.com/vitejs/vite-ecosystem-ci). The same should be done for the rest of the `*-ecosystem-ci` repos.

This approach is not super-maintainable, it's just a prototype.

## Usage

Working for `nx` and `vite` for the moment.

Example usage:

### For Nx

1. Clone a repository that uses the Nx packages, for example the `nxext` repository:

```shell
git clone git@github.com:nxext/nx-extensions.git
```

2. Install the dependencies

```shell
cd nx-extensions
```

and

```shell
pnpm i
```

3. Run the ecosystem tests

```shell
npx ecosystem-ci-prototype@latest --ecosystem="nx" --build="build vue" --test="test vue"
```

### For vite

1. Clone a repository that uses the vite packages, for example the `nx` repository:

```shell
git clone git@github.com:nrwl/nx.git
```

2. Install the dependencies

```shell
cd nx
```

and

```shell
pnpm i
```

3. Run the ecosystem tests

```shell
npx ecosystem-ci-prototype@latest --ecosystem="vite" --build="build-project vite" --test="test vite" --test="e2e e2e-vite"
```

---
_Source: https://npm.io/package/ecosystem-ci-prototype · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
