* add an action to install pnpm packages * add an action to prepare build environment * rewrite test workflow, using composite actions and matrix