Skip to content

Commit 7292223

Browse files
authored
Merge pull request #2251 from FabianKramm/main
fix: ui commands problem
2 parents b008e76 + 5479854 commit 7292223

8 files changed

Lines changed: 22413 additions & 192 deletions

File tree

pkg/devspace/server/server.go

Lines changed: 10 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ func (h *handler) version(w http.ResponseWriter, r *http.Request) {
203203
type returnConfig struct {
204204
Config *latest.Config `yaml:"config"`
205205
RawConfig map[string]interface{} `yaml:"rawConfig"`
206-
LocalCache localcache.Cache `yaml:"generatedConfig"`
206+
LocalCache localCache `yaml:"generatedConfig"`
207207

208208
AnalyticsEnabled bool `yaml:"analyticsEnabled"`
209209
Profile string `yaml:"profile"`
@@ -213,6 +213,11 @@ type returnConfig struct {
213213
KubeContexts map[string]string `yaml:"kubeContexts"`
214214
}
215215

216+
type localCache struct {
217+
Vars map[string]interface{} `yaml:"vars,omitempty"`
218+
LastContext *localcache.LastContextConfig `yaml:"lastContext,omitempty"`
219+
}
220+
216221
func (h *handler) returnConfig(w http.ResponseWriter, r *http.Request) {
217222
profile := ""
218223
retConfig := &returnConfig{
@@ -224,7 +229,10 @@ func (h *handler) returnConfig(w http.ResponseWriter, r *http.Request) {
224229
if h.ctx.Config() != nil {
225230
retConfig.RawConfig = h.ctx.Config().Raw()
226231
retConfig.Config = h.ctx.Config().Config()
227-
retConfig.LocalCache = h.ctx.Config().LocalCache()
232+
retConfig.LocalCache = localCache{
233+
Vars: h.ctx.Config().Variables(),
234+
LastContext: h.ctx.Config().LocalCache().GetLastContext(),
235+
}
228236
}
229237
if h.ctx.KubeClient() != nil {
230238
retConfig.KubeNamespace = h.ctx.KubeClient().Namespace()

ui/config/webpack.config.dev.js

Lines changed: 0 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -6,7 +6,6 @@ const webpack = require('webpack');
66
const HtmlWebpackPlugin = require('html-webpack-plugin');
77
const CaseSensitivePathsPlugin = require('case-sensitive-paths-webpack-plugin');
88
const InterpolateHtmlPlugin = require('react-dev-utils/InterpolateHtmlPlugin');
9-
const WatchMissingNodeModulesPlugin = require('react-dev-utils/WatchMissingNodeModulesPlugin');
109
const ModuleScopePlugin = require('react-dev-utils/ModuleScopePlugin');
1110
const ForkTsCheckerWebpackPlugin = require('fork-ts-checker-webpack-plugin');
1211
const getClientEnvironment = require('./env');
@@ -262,11 +261,6 @@ module.exports = {
262261
// a plugin that prints an error when you attempt to do this.
263262
// See https://github.com/facebookincubator/create-react-app/issues/240
264263
new CaseSensitivePathsPlugin(),
265-
// If you require a missing module and then `npm install` it, you still have
266-
// to restart the development server for Webpack to discover it. This plugin
267-
// makes the discovery automatic so you don't have to restart.
268-
// See https://github.com/facebookincubator/create-react-app/issues/186
269-
new WatchMissingNodeModulesPlugin(paths.appNodeModules),
270264
// Moment.js is an extremely popular library that bundles large locale files
271265
// by default due to how Webpack interprets its code. This is a practical
272266
// solution that requires the user to opt into importing specific locales.

ui/config/webpackDevServer.config.js

Lines changed: 1 addition & 64 deletions
Original file line numberDiff line numberDiff line change
@@ -11,85 +11,22 @@ const host = process.env.HOST || '0.0.0.0';
1111

1212
module.exports = function(proxy, allowedHost) {
1313
return {
14-
// WebpackDevServer 2.4.3 introduced a security fix that prevents remote
15-
// websites from potentially accessing local content through DNS rebinding:
16-
// https://github.com/webpack/webpack-dev-server/issues/887
17-
// https://medium.com/webpack/webpack-dev-server-middleware-security-issues-1489d950874a
18-
// However, it made several existing use cases such as development in cloud
19-
// environment or subdomains in development significantly more complicated:
20-
// https://github.com/facebookincubator/create-react-app/issues/2271
21-
// https://github.com/facebookincubator/create-react-app/issues/2233
22-
// While we're investigating better solutions, for now we will take a
23-
// compromise. Since our WDS configuration only serves files in the `public`
24-
// folder we won't consider accessing them a vulnerability. However, if you
25-
// use the `proxy` feature, it gets more dangerous because it can expose
26-
// remote code execution vulnerabilities in backends like Django and Rails.
27-
// So we will disable the host check normally, but enable it if you have
28-
// specified the `proxy` setting. Finally, we let you override it if you
29-
// really know what you're doing with a special environment variable.
30-
disableHostCheck: !proxy ||
31-
process.env.DANGEROUSLY_DISABLE_HOST_CHECK === 'true',
3214
// Enable gzip compression of generated files.
3315
compress: true,
34-
// Silence WebpackDevServer's own logs since they're generally not useful.
35-
// It will still show compile warnings and errors with this setting.
36-
clientLogLevel: 'none',
37-
// By default WebpackDevServer serves physical files from current directory
38-
// in addition to all the virtual build products that it serves from memory.
39-
// This is confusing because those files won’t automatically be available in
40-
// production build folder unless we copy them. However, copying the whole
41-
// project directory is dangerous because we may expose sensitive files.
42-
// Instead, we establish a convention that only files in `public` directory
43-
// get served. Our build script will copy `public` into the `build` folder.
44-
// In `index.html`, you can get URL of `public` folder with %PUBLIC_URL%:
45-
// <link rel="shortcut icon" href="%PUBLIC_URL%/favicon.ico">
46-
// In JavaScript code, you can access it with `process.env.PUBLIC_URL`.
47-
// Note that we only recommend using the `public` folder as an escape hatch
48-
// for files like `favicon.ico`, `manifest.json`, and libraries that are
49-
// for some reason broken when imported through Webpack. If you just want to
50-
// use an image, put it in `src` and `import` it from JavaScript instead.
51-
contentBase: paths.appPublic,
52-
// By default files from `contentBase` will not trigger a page reload.
53-
watchContentBase: true,
5416
// Enable hot reloading server. It will provide /sockjs-node/ endpoint
5517
// for the WebpackDevServer client so it can learn when the files were
5618
// updated. The WebpackDevServer client is included as an entry point
5719
// in the Webpack development configuration. Note that only changes
5820
// to CSS are currently hot reloaded. JS changes will refresh the browser.
5921
hot: true,
60-
// It is important to tell WebpackDevServer to use the same "root" path
61-
// as we specified in the config. In development, we always serve from /.
62-
publicPath: config.output.publicPath,
63-
// WebpackDevServer is noisy by default so we emit custom message instead
64-
// by listening to the compiler events with `compiler.plugin` calls above.
65-
quiet: true,
66-
// Reportedly, this avoids CPU overload on some systems.
67-
// https://github.com/facebookincubator/create-react-app/issues/293
68-
// src/node_modules is not ignored to support absolute imports
69-
// https://github.com/facebookincubator/create-react-app/issues/1065
70-
watchOptions: {
71-
ignored: ignoredFiles(paths.appSrc),
72-
},
7322
// Enable HTTPS if the HTTPS environment variable is set to 'true'
7423
https: protocol === 'https',
7524
host: host,
76-
overlay: false,
7725
historyApiFallback: {
7826
// Paths with dots should still use the history fallback.
7927
// See https://github.com/facebookincubator/create-react-app/issues/387.
8028
disableDotRule: true,
8129
},
82-
public: allowedHost,
83-
proxy,
84-
before(app) {
85-
// This lets us open files from the runtime error overlay.
86-
app.use(errorOverlayMiddleware());
87-
// This service worker file is effectively a 'no-op' that will reset any
88-
// previous service worker registered for the same host:port combination.
89-
// We do this in development to avoid hitting the production cache if
90-
// it used the same host and port.
91-
// https://github.com/facebookincubator/create-react-app/issues/2272#issuecomment-302832432
92-
app.use(noopServiceWorkerMiddleware());
93-
},
30+
proxy
9431
};
9532
};

0 commit comments

Comments
 (0)