Skip to content
This repository was archived by the owner on Sep 14, 2025. It is now read-only.
This repository was archived by the owner on Sep 14, 2025. It is now read-only.

EPERM: operation not permitted #819

@sytolk

Description

@sytolk

I have starting s3rver with option resetOnClose: true

export async function runS3Server(silent = true) {
  // Set NODE_OPTIONS environment variable to use openssl-legacy-provider
  process.env.NODE_OPTIONS = '--openssl-legacy-provider';

  const directoryTargetPath = pathLib.resolve(
    __dirname,
    'testdata-tmp',
    'file-structure',
  );
  const corsConfig = pathLib.resolve(__dirname, 's3rver', 'cors.xml');
  const instance = new S3rver({
    port: 4569,
    address: 'localhost',
    silent: silent,
    directory: directoryTargetPath,
    resetOnClose: true,
    sslEnabled: false,
    configureBuckets: [
      {
        name: 'supported-filestypes',
        configs: [fs.readFileSync(corsConfig)],
      },
    ],
  });

  await instance.run();
  return instance;
}

and this is error on Windows - github actions

Error: EPERM: operation not permitted, lstat 'D:\a\tagspaces\tagspaces\tests\testdata-tmp\file-structure\supported-filestypes\.ts\sample.avif.jpg._S3rver_object'

    at Object.lstatSync (D:\a\tagspaces\tagspaces\node_modules\graceful-fs\polyfills.js:319:16)
    at rimrafSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:237:18)
    at D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:291:39
    at rmkidsSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:291:26)
    at rmdirSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:281:7)
    at fixWinEPERMSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:167:5)
    at rimrafSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:260:26)
    at D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:291:39
    at rmkidsSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:291:26)
    at rmdirSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:281:7)
    at fixWinEPERMSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:167:5)
    at Object.rimrafSync (D:\a\tagspaces\tagspaces\node_modules\s3rver\node_modules\fs-extra\lib\remove\rimraf.js:260:26)
    at FilesystemStore.reset (D:\a\tagspaces\tagspaces\node_modules\s3rver\lib\stores\filesystem.js:108:10)
    at S3rver.reset (D:\a\tagspaces\tagspaces\node_modules\s3rver\lib\s3rver.js:132:16)
    at Server.<anonymous> (D:\a\tagspaces\tagspaces\node_modules\s3rver\lib\s3rver.js:171:14)

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions