PromucFlow_constructor/app/client/craco.build.config.js

55 lines
1.3 KiB
JavaScript
Raw Normal View History

2020-02-27 11:25:55 +00:00
/* eslint-disable @typescript-eslint/no-var-requires */
2020-04-17 04:59:43 +00:00
const SentryWebpackPlugin = require("@sentry/webpack-plugin");
const merge = require("webpack-merge");
const common = require("./craco.common.config.js");
2020-05-05 12:16:51 +00:00
const WorkboxPlugin = require("workbox-webpack-plugin");
2020-02-27 11:25:55 +00:00
2020-04-17 04:59:43 +00:00
const env = process.env.REACT_APP_ENVIRONMENT;
2020-04-17 04:59:43 +00:00
const plugins = [];
plugins.push(
new WorkboxPlugin.InjectManifest({
swSrc: "./src/serviceWorker.js",
mode: "development",
swDest: "./pageService.js",
Initialise comments (#3328) * Initial scaffolding for comments CRUD APIs * add actions * add assets * state management for existing comments and creating new * add ui components * add overlay comments wrapper to baseWidget * add toggle comment mode button at editor header * trigger tests * Disallow commenting as someone else * Add applicationId for comments * lint * Add overlay blacklist to prevent component interaction while adding comments * Comment thread style updates * Placeholder comment context menu * Controlled comment thread visibility for making new comments visible by default * Update comment type description * Reset input on save * Resolve comment thread button ui * fix close on esc key, dont create new comment on outside click * Submit on enter * add emoji picker * Attempt at adding a websocket server in Java * CRUD APIs for comment threads * Add API for getting all threads in application * Move types to a separate file * Initial commit for real time server (RTS) * Add script to start RTS * Fix position property * Use create comment thread API * Use add comment to thread API * Add custom cursor * Dispatch logout init on 401 errors * Allow CORS for real time connection * Add more logs to RTS * Fix construction of MongoClient * WIP: Real time comments * Enable comments * Minor updates * Read backend API base URL from environment * Escape to reset comments mode * Set popover position as auto and boundary as scroll parent * Disable warning * Added permissions for comment threads * Add resolved API for comment threads * Migration to set commenting permission on existing apps * Fix updates bringing the RTS down * Show view latest button, scroll to bottom on creating a new comment * Cleanup comment reducer * Move to typescript for RTS * Add missing server.ts and tsconfig files * Resolve / unresolve comment * Scaffold app comments * Minor fixes: comment on top of all widgets, add toggle button at viewer header * Reconnect socket on creating a new app, set connected status in store * Retry socket connection flow * Integration tests for comments with api mocks using msw * Fix circular depependency * rm file * Minor cleanup and comments * Minor refactors: move isScrolledToBottom to common hooks, decouple prevent interactions overlay from comments wrapper * Use policies when pushing updates in RTS * ENV var to set if comments are enabled * Fix: check if editor/viewer is initialised before waiting for init action * Add tests for comments reducer * Revert "ENV var to set if comments are enabled" This reverts commit 988efeaa69d378d943a387e1e73510334958adc5. * Enable comments for users with appsmith email * lint * fix * Try running a socket.io server inside backend * Update comment reducer tests * Init mentions within comments * Fix comment thread updates with email rooms * Minor fixes * Refactors / review suggestions * lint * increase cache limit for builds * Comment out tests for feature that's under development * Add Dockerfile for RTS * Fix policies missing for first comment in threads * Use draftJS for comments input with mentions support * fix fixtures * Use thread's policies when querying for threads * Update socket.io to v4 * Add support for richer body with mentions * Update comment body type to RawDraftContentState * fix stale method * Fix mentions search * Minor cleanups * Comment context menu and thread UI updates * revert: Scaffold app comments * Yarn dependencies * Delete comment using id api added * Init app comments * Add test for creating thread * Api for delete comment with id * Test comment creation response and policies * Copy comment links * Fix reset editor state * Delete valid comment testcase added * Delete comment TC : code refactor * Don't allow creating comments with an empty body * Pin comments WIP[] * Ignore dependency-reduced-pom.xml files from VCS * Cleanup of some dev-only files, for review * Delete comment * Update socket.io to v4 in RTS * Pin and resolve comment thread object added in commentThread * Pin and resolve comment thread object added in commentThread * Update comment thread API * Added creationTime and updationTime in comment thread response * Added creationTime and updationTime in comment thread response * Added human readable id to comment threads, fallback to username for null name in user document * Refactor * lint * fix test, rm duplicate selector * comment out saga used for dev * CommentThread viewed status, username fallback for getName=null, username field added in pin & resolve status * lint * trigger tests Co-authored-by: Shrikant Sharat Kandula <shrikant@appsmith.com> Co-authored-by: Abhijeet <abhi.nagarnaik@gmail.com>
2021-04-29 10:33:51 +00:00
maximumFileSizeToCacheInBytes: 6 * 1024 * 1024,
}),
);
2020-04-17 04:59:43 +00:00
if (env === "PRODUCTION" || env === "STAGING") {
Include version information when building Docker images for server and client (#2200) * Include version information in backend builds * Enable manual trigger of server workflow * Add a dummy input field for manual trigger * Fix secret checking in github actions * Disable cron scheduling of sync job * Build docker image on pushing a version tag * Fix duplicated id and invalid id in release workflow * Don't try to login to Docker * Avoid download progress outputs from Maven * Add version information for building client * Calculate version number only once * Enable push to DockerHub after building images * Use Docker username from GitHub secrets * Fix Docker username in tags when building image * Use different secret for org name * Minor refactoring in server workflow * Update client build workflow to use version * Enable manual triggering of client workflow * Set snapshot version for server builds * Push to docker for all branches (temp) * Undo temp change to push all branches to DockerHub * Use Docker org from secrets in client.yml * Fix missing version reference in client.yml * Remove debug command in dockerfile * Save release notes in a resource file in Docker image * Fix query serialization to get release notes * Get releases of current repo instead of hard-coded repo * Fix variable quoting for repo variables * Exclude draft and prerelease nodes from image * Fix call to any in release notes processor * Fix syntax error in release notes script * Implement API to get new release count and info * Add missing ReleaseNotes component * Have the release workflow run after a release is created * Build server after generating release notes * Change release trigger to "released" * Change release trigger to "published" * Change release trigger to released, edited and deleted * Use JS script to get release notes, take 1 * Filter drafts and prereleases in script * Fix syntax error in ES6 * Write release notes to file * Create parent directory before writing release notes * Log cwd in release notes script * Log pwd along with release-notes content * Handle case where working directory is incorrect * Remove shell based release notes generator * Don't show error when Sentry config is missing * Check for sentry auth token to enable Sentry * Carry build's exit code over to CI * Mark out build result and add a note about it * Add a small test to verify new versions computation * Remove incorrect test assertion * Remove generation of release notes file * Connect to cloud services to fetch release notes data * Fix missing runner for test class * Handle missing cloud_services base URL * Fix test failures due to missing mocks * Enable sync-ee cron job * Revert build.sh as there's no real change * Add API to update release notes viewed version for users * Fix prettier line-length errors * Create UserData model for info unrelated to auth * Fix field name calls * Ensure we have a userId before setting userData * Add tests for setting version number in UserData * Include instanceId when fetching release notes
2021-01-12 12:45:15 +00:00
if (
process.env.SENTRY_AUTH_TOKEN != null &&
process.env.SENTRY_AUTH_TOKEN !== ""
) {
plugins.push(
new SentryWebpackPlugin({
include: "build",
ignore: ["node_modules", "webpack.config.js"],
release: process.env.REACT_APP_SENTRY_RELEASE,
deploy: {
env: process.env.REACT_APP_SENTRY_ENVIRONMENT,
},
}),
Include version information when building Docker images for server and client (#2200) * Include version information in backend builds * Enable manual trigger of server workflow * Add a dummy input field for manual trigger * Fix secret checking in github actions * Disable cron scheduling of sync job * Build docker image on pushing a version tag * Fix duplicated id and invalid id in release workflow * Don't try to login to Docker * Avoid download progress outputs from Maven * Add version information for building client * Calculate version number only once * Enable push to DockerHub after building images * Use Docker username from GitHub secrets * Fix Docker username in tags when building image * Use different secret for org name * Minor refactoring in server workflow * Update client build workflow to use version * Enable manual triggering of client workflow * Set snapshot version for server builds * Push to docker for all branches (temp) * Undo temp change to push all branches to DockerHub * Use Docker org from secrets in client.yml * Fix missing version reference in client.yml * Remove debug command in dockerfile * Save release notes in a resource file in Docker image * Fix query serialization to get release notes * Get releases of current repo instead of hard-coded repo * Fix variable quoting for repo variables * Exclude draft and prerelease nodes from image * Fix call to any in release notes processor * Fix syntax error in release notes script * Implement API to get new release count and info * Add missing ReleaseNotes component * Have the release workflow run after a release is created * Build server after generating release notes * Change release trigger to "released" * Change release trigger to "published" * Change release trigger to released, edited and deleted * Use JS script to get release notes, take 1 * Filter drafts and prereleases in script * Fix syntax error in ES6 * Write release notes to file * Create parent directory before writing release notes * Log cwd in release notes script * Log pwd along with release-notes content * Handle case where working directory is incorrect * Remove shell based release notes generator * Don't show error when Sentry config is missing * Check for sentry auth token to enable Sentry * Carry build's exit code over to CI * Mark out build result and add a note about it * Add a small test to verify new versions computation * Remove incorrect test assertion * Remove generation of release notes file * Connect to cloud services to fetch release notes data * Fix missing runner for test class * Handle missing cloud_services base URL * Fix test failures due to missing mocks * Enable sync-ee cron job * Revert build.sh as there's no real change * Add API to update release notes viewed version for users * Fix prettier line-length errors * Create UserData model for info unrelated to auth * Fix field name calls * Ensure we have a userId before setting userData * Add tests for setting version number in UserData * Include instanceId when fetching release notes
2021-01-12 12:45:15 +00:00
);
} else {
console.log(
"Sentry configuration missing in process environment. Sentry will be disabled.",
);
}
}
2020-02-27 11:25:55 +00:00
module.exports = merge(common, {
webpack: {
2020-04-17 04:59:43 +00:00
plugins: plugins,
2020-02-27 11:25:55 +00:00
},
jest: {
configure: {
moduleNameMapper: {
// Jest module mapper which will detect our absolute imports.
"^@test(.*)$": "<rootDir>/test$1",
},
},
},
2020-02-27 11:25:55 +00:00
});