1.4.0 • Published 1 year ago
@metalist/vite-plugin-blob-storage v1.4.0
Vite Plugin Blob Storage
Package file uploader Plugin for Vite Azure Blob Storage
Features
- Supports Account Key or SAS Token.
- Supports modifying the base URL.
Install
pnpm add @metalist/vite-plugin-blob-storage -DUsage
vite.config.ts
Using Environment Variables in Config
import react from "@vitejs/plugin-react";
import path from "path";
import { defineConfig, loadEnv } from "vite";
import { ViteBlobStorage } from "@metalist/vite-plugin-blob-storage";
// https://vitejs.dev/config/
export default defineConfig(({ mode }) => {
const env = loadEnv(mode, process.cwd());
return {
plugins: [
react(),
ViteBlobStorage(env.VITE_USE_CDN === 'true', {
basePath: env.VITE_BLOB_CDN_PATH, // your CDN URL or Blob Storage URL
accountName: env.VITE_BLOB_ACCOUNT_NAME,
accountKey: env.VITE_BLOB_ACCOUNT_KEY, // or sasToken: env.VITE_BLOB_SAS_TOKEN
containerName: env.VITE_BLOB_CONTAINER_NAME,
subPath: env.VITE_BLOB_CONTAINER_SUB_PATH,
excludes: ['index.html'],
})
],
};
});Options
| Name | Type | Default | Required | Description |
|---|---|---|---|---|
accountName | {String} | true | The name of the Azure Storage account. | |
accountKey | {String} | false | The account key for the Azure Storage account. | |
sasToken | {String} | false | The SAS token for the Azure Storage account. | |
containerName | {String} | true | The name of the container. | |
subPath | {String} | false | The subPath of the container. | |
excludes | {Array[string]} | '.DS_Store', '*.map' | false | excluded content 型 |
basePath | {String} | false | The domain of Azure CDN will modify the base of the output files. |
containerName- The length of a container name can be from 3 to 63 characters.
- The container name must start with a letter or number and can only contain lowercase letters, numbers, and hyphens (-).
- Consecutive hyphens are not allowed in the container name.
excludesMatching related files or folders. For detailed usage, please refer to: micromatch*.mapdo not upload files with themapfile extension.
accountKeyandsasToken- The priority of
accountKeyis higher thansasToken. accountKeyand sasToken cannot be empty at the same time
- The priority of
subPath- The subPath suggestion use the project name.
- The subPath can be used to distinguish different projects in the same container.
- The subPath container name must start with a letter or number and can only contain lowercase letters, numbers, and hyphens (-).
- The length of a container name can be from 3 to 63 characters.
Thanks
Thanks to vite-plugin-s3 used as inspiration fro this plugin
License
Released under the MIT License.