Template stored in aws s3 editing externally



  • We are using jsreport in our application using docker and templates are stored in aws s3 bucket but after modifying the template from our application's HTML editor the changes is not reflecting in jsreport studio and in report preview. In order to get the modification reflected I have restart the report service.

    {
    "allowLocalFilesAccess": true,
    "httpPort": 8084,
    "store": {
    "provider": "fs"
    },
    "extensions": {

    "studio": { "flushLogsInterval": 20000 },
    "scheduling": { "intreval": 20000 },

    "fs-store": {
    "persistence": {
    "provider": "aws-s3"
    },
    "compactionInterval": 20000,

    "syncModifications": {
    "updateStudio": true
    },
    "sync": {
    "usePolling": true
    }
    },
    "fs-store-aws-s3-persistence": {
    "accessKeyId": "xxx",
    "secretAccessKey": "xxxx",
    "bucket": "jsreportbucket",
    "lock": {
    "queueName": "jsreport-lock.fifo"
    }
    },
    "scripts": {
    "timeout": 300000,
    "allowedModules": ["request", ""]
    }
    },
    "phantom": {
    "numberOfWorkers": 2,
    "timeout": 180000,
    "strategy": "dedicated-process"
    },
    "templatingEngines": {
    "numberOfWorkers": 2,
    "timeout": 1800000 ,
    "strategy": "http-server"
    },
    "tasks": {
    "numberOfWorkers": 2,
    "timeout": 600000,
    "strategy": "dedicated-process",
    "forkOptions": {
    "execArgv": [
    "--max-old-space-size=4096"
    ]
    }
    },
    "scripts": {
    "timeout": 1200000,
    "allowedModules": "
    "
    },
    "express": {
    "renderTimeout": 1800000,
    "inputRequestLimit": "200mb"
    }
    }



  • Yes, this is by design. jsreport templates store with aws s3 driver has everything cached in the memory.

    I believe the best solution is to use jsreport odata API to edit the templates instead of the direct access to the s3.
    https://jsreport.net/learn/api#querying-and-crud



  • But how to create templates ,its assets(image, css), scripts for single report using odata api?



  • You can create every entity using API, also the assets.
    This won't work for you?



  • Thanks for the response.So you are saying that we need to create template,asset( image,css), script seperately for report using odata.But i have more queries
    1.How all these files will get stored under a single folder?
    2.is it possible to rename the names of template, assets, script files using odata API?
    3.Is it possible to copy and paste the folder containing template, assets, script to another folder using odata API?


Log in to reply
 

Looks like your connection to jsreport forum was lost, please wait while we try to reconnect.