diff --git a/.circleci/config.yml b/.circleci/config.yml
deleted file mode 100644
index b80b90b7a..000000000
--- a/.circleci/config.yml
+++ /dev/null
@@ -1,78 +0,0 @@
-version: 2.1
-
-workflows:
- version: 2
- build_pipeline:
- jobs:
- - build
- - integrated_test:
- requires:
- - build
- - deploy:
- filters:
- tags:
- only: /^v.*/
- branches:
- ignore: /.*/
-commands:
- bootstrap:
- steps:
- - restore_cache:
- name: Restore npm packages
- keys:
- - dependencies-{{ checksum "yarn.lock" }}
- - run:
- name: Bootstrap workspaces
- command: |
- yarn install --frozen-lockfile
- yarn bootstrap
- - save_cache:
- name: Store npm packages
- paths:
- - node_modules
- key: dependencies-{{ checksum "yarn.lock" }}
-
-jobs:
- build:
- docker:
- - image: node:18
- working_directory: ~/repo
- steps:
- - checkout
- - bootstrap
- - run: yarn format:check
- - run: yarn build
- - run: yarn lint
- - run: yarn test
-
- integrated_test:
- docker:
- - image: regviz/node-xcb:node-16
- auth:
- username: $DOCKERHUB_USERNAME
- password: $DOCKERHUB_PASSWORD
- working_directory: ~/repo
- parallelism: 4
- steps:
- - checkout
- - bootstrap
- - run: yarn build
- - run: yarn e2e
- # - run: yarn regression
-
- deploy:
- docker:
- - image: node:18
- working_directory: ~/repo
- steps:
- - checkout
- - bootstrap
- - run:
- name: Login npm
- command: |
- echo "//registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}" > ~/.npmrc
- npm whoami
- - run:
- name: Publish
- command: |
- yarn deploy:ci
diff --git a/.github/workflows/nodejs.yml b/.github/workflows/build.yml
similarity index 71%
rename from .github/workflows/nodejs.yml
rename to .github/workflows/build.yml
index 00bc36865..3cbf3c750 100644
--- a/.github/workflows/nodejs.yml
+++ b/.github/workflows/build.yml
@@ -1,4 +1,4 @@
-name: Node.js CI
+name: Unit test
on:
push:
@@ -9,19 +9,20 @@ on:
jobs:
build:
- runs-on: ${{ matrix.os }}
-
strategy:
matrix:
- os: [ubuntu-latest, windows-latest]
- node-version: [16.x]
+ os: [ubuntu-latest]
+ node-version: [18.x]
+
+ runs-on: ${{ matrix.os }}
steps:
- - uses: actions/checkout@v2
+ - uses: actions/checkout@v3
- name: Use Node.js ${{ matrix.node-version }}
- uses: actions/setup-node@v1
+ uses: actions/setup-node@v3
with:
node-version: ${{ matrix.node-version }}
+ cache: 'yarn'
- run: yarn install --frozen-lockfile
- run: yarn bootstrap
- run: yarn build
diff --git a/.github/workflows/integrated_test.yml b/.github/workflows/integrated_test.yml
new file mode 100644
index 000000000..4644e9960
--- /dev/null
+++ b/.github/workflows/integrated_test.yml
@@ -0,0 +1,35 @@
+name: Integrated Test
+
+on:
+ push:
+ branches:
+ - master
+ - next
+ pull_request:
+
+jobs:
+ test:
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ example_dir:
+ - examples/v5-managed-react-legacy-decorator
+ - examples/v5-simple
+ - examples/v6-managed-react
+ - examples/v6-simple
+ - examples/v6-story-store-v7
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: Use Node.js
+ uses: actions/setup-node@v3
+ with:
+ node-version: 16.x
+ cache: 'yarn'
+ - run: yarn install --frozen-lockfile
+ - run: yarn bootstrap
+ - run: yarn build
+ - run: yarn e2e ${{ matrix.example_dir }}
+ env:
+ CI: true
diff --git a/.github/workflows/publish.yml b/.github/workflows/publish.yml
new file mode 100644
index 000000000..b3243758a
--- /dev/null
+++ b/.github/workflows/publish.yml
@@ -0,0 +1,32 @@
+name: publish
+
+on:
+ push:
+ tags:
+ - '*'
+
+jobs:
+ publish:
+ runs-on: ubuntu-latest
+
+ strategy:
+ matrix:
+ node-version: [18.x]
+
+ steps:
+ - uses: actions/checkout@v3
+ - name: Use Node.js ${{ matrix.node-version }}
+ uses: actions/setup-node@v3
+ with:
+ node-version: ${{ matrix.node-version }}
+ cache: 'yarn'
+ - run: yarn install --frozen-lockfile
+ - run: yarn bootstrap
+ - name: npm publish
+ run: |
+ echo "//registry.npmjs.org/:_authToken=${NPM_AUTH_TOKEN}" > ~/.npmrc
+ npm whoami
+ yarn deploy:ci
+ env:
+ NPM_AUTH_TOKEN: ${{ secrets.NPM_AUTH_TOKEN }}
+ CI: true
diff --git a/README.md b/README.md
index 998817637..5d84aa871 100644
--- a/README.md
+++ b/README.md
@@ -6,7 +6,6 @@
![DEMO](https://raw.githubusercontent.com/reg-viz/storycap/artwork/demo_v2.gif)
[![npm](https://img.shields.io/npm/v/storycap.svg?style=flat-square)](https://www.npmjs.com/package/storycap)
-[![CircleCI](https://circleci.com/gh/reg-viz/storycap.svg?style=svg)](https://circleci.com/gh/reg-viz/storycap)
> A [Storybook][storybook] Addon, Save the screenshot image of your stories :camera: via [Puppeteer][puppeteer].
@@ -530,11 +529,9 @@ You can change search channel with `--chromiumChannel` option or set executable
Storycap is tested with the followings versions:
- Simple mode:
- - [x] Storybook v4.x
- [x] Storybook v5.x
- [x] Storybook v6.x
- Managed mode:
- - [x] Storybook v4.x
- [x] Storybook v5.x
- [x] Storybook v6.x
diff --git a/e2e.sh b/e2e.sh
index 3ebed80a1..5b6a68290 100755
--- a/e2e.sh
+++ b/e2e.sh
@@ -20,8 +20,8 @@ function run() {
echo ""
}
-total=${CIRCLE_NODE_TOTAL:-1}
-current_idx=${CIRCLE_NODE_INDEX:-0}
+total=${NODE_TOTAL:-1}
+current_idx=${NODE_INDEX:-0}
rm -rf __screenshots__
mkdir -p __screenshots__/examples
diff --git a/examples/v4-managed-react/.gitignore b/examples/v4-managed-react/.gitignore
deleted file mode 100644
index d30f40ef4..000000000
--- a/examples/v4-managed-react/.gitignore
+++ /dev/null
@@ -1,21 +0,0 @@
-# See https://help.github.com/ignore-files/ for more about ignoring files.
-
-# dependencies
-/node_modules
-
-# testing
-/coverage
-
-# production
-/build
-
-# misc
-.DS_Store
-.env.local
-.env.development.local
-.env.test.local
-.env.production.local
-
-npm-debug.log*
-yarn-debug.log*
-yarn-error.log*
diff --git a/examples/v4-managed-react/.storybook/addons.js b/examples/v4-managed-react/.storybook/addons.js
deleted file mode 100644
index cbb37a20c..000000000
--- a/examples/v4-managed-react/.storybook/addons.js
+++ /dev/null
@@ -1,5 +0,0 @@
-import '@storybook/addon-actions/register';
-import '@storybook/addon-links/register';
-import '@storybook/addon-viewport/register';
-
-import 'storycap/register';
diff --git a/examples/v4-managed-react/.storybook/config.js b/examples/v4-managed-react/.storybook/config.js
deleted file mode 100644
index 0db6db326..000000000
--- a/examples/v4-managed-react/.storybook/config.js
+++ /dev/null
@@ -1,15 +0,0 @@
-import { configure, addDecorator } from '@storybook/react';
-import { withScreenshot } from 'storycap';
-
-function loadStories() {
- require('../src/stories');
-}
-
-addDecorator(withScreenshot({
- viewport: {
- width: 1200,
- height: 800,
- }
-}));
-
-configure(loadStories, module);
diff --git a/examples/v4-managed-react/README.md b/examples/v4-managed-react/README.md
deleted file mode 100644
index 479d632a5..000000000
--- a/examples/v4-managed-react/README.md
+++ /dev/null
@@ -1,2444 +0,0 @@
-This project was bootstrapped with [Create React App](https://github.com/facebookincubator/create-react-app).
-
-Below you will find some information on how to perform common tasks.
-You can find the most recent version of this guide [here](https://github.com/facebookincubator/create-react-app/blob/master/packages/react-scripts/template/README.md).
-
-## Table of Contents
-
-- [Updating to New Releases](#updating-to-new-releases)
-- [Sending Feedback](#sending-feedback)
-- [Folder Structure](#folder-structure)
-- [Available Scripts](#available-scripts)
- - [npm start](#npm-start)
- - [npm test](#npm-test)
- - [npm run build](#npm-run-build)
- - [npm run eject](#npm-run-eject)
-- [Supported Browsers](#supported-browsers)
-- [Supported Language Features and Polyfills](#supported-language-features-and-polyfills)
-- [Syntax Highlighting in the Editor](#syntax-highlighting-in-the-editor)
-- [Displaying Lint Output in the Editor](#displaying-lint-output-in-the-editor)
-- [Debugging in the Editor](#debugging-in-the-editor)
-- [Formatting Code Automatically](#formatting-code-automatically)
-- [Changing the Page `