New Research: Supply Chain Attack on Axios Pulls Malicious Dependency from npm.Details
Socket
Book a DemoSign in
Socket

semantic-release-git-publish

Package Overview
Dependencies
Maintainers
1
Versions
3
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

semantic-release-git-publish

A semantic-release plugin that publishes by pushing the contents of this Git repository to another Git repository

latest
Source
npmnpm
Version
1.1.0
Version published
Maintainers
1
Created
Source

semantic-release-git-publish

NPM Version Run tests

A semantic-release plugin that publishes by syncing the contents of the working directory to another Git repository and tagging that repository with the release version.

Use cases

This plugin was developed to facilitate publishing a Swift package inside of a monorepo. Along with the semantic-release-monorepo plugin, the Swift subpackage of the monorepo can be be "published" to it's own standalone repo for public consumption.

There may be other use cases where this plugin is useful, such as creating a public copy of a private repository.

Plugin steps

StepDescription
verifyConditionsVerifies that the destinationRepositoryUrl option is set to a valid Git repository.
publishClones the destination repository, updates the content to match the current working directory, commits the changes, and tags the commit with the release version.

Install

Install the plugin as a development dependency with

npm install semantic-release-git-publish --save-dev

Usage

The plugin can be configured in the semantic-release configuration file:

{
  "plugins": [
    "@semantic-release/git",
    [
      "semantic-release-git-publish",
      {
        "destinationRepositoryUrl": "git@gitlab.com:destination-repository.git",
        "ignorePaths": [
          "secret.txt",
          "**/*.secret"
        ]
      }
    ]
  ]
}

Configuration

Options

OptionsDescriptionDefault
destinationRepositoryUrlThe path to the destination repository
ignorePaths(Optional) An array of glob patterns to exclude from file syncing.

Matching files in the working directory will not get synced to the destination repo or be modified in the destination repo if they already exist. Globs are minimatch patterns.
[ ]

Known limitations

This plugin does not currently handle symlinks and possibly some other cases. It handles all scenarios involving changing files and directories. Anything not supported will log an error and cause the publish step to fail. For more details, see /src/utils/syncFiles.ts.

Keywords

semantic-release

FAQs

Package last updated on 30 Jan 2024

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts