For images that don't have a "latest" tag (such as `google/debian`) we
fetch all the tags when the `ImageCard` component mounts and set the
chosen tag to the first one in the list (so far it seems to be the
latest tag where such a tag exists but we can add some logic here to
choose a appropriate tag if we want).
Signed-off-by: Kristján Oddsson <koddsson@gmail.com>
The error message is actually a object and not a string so we format it
a bit better with this patch.
Signed-off-by: Kristján Oddsson <koddsson@gmail.com>
When a container is first started and the image is downloading there is
no id set. With this patch we'll check if the container has a id and
and is downloading, if so we'll substitute it with the image name and
render such.
This will fix the react key props warning in the developer console as
well as maybe give us some sort of performance boost(?)
Signed-off-by: Kristján Oddsson <koddsson@gmail.com>
Make sure that errors that happen when pulling image layers bubble up to
the UI. We do this by catching errors coming from the docker client,
calling the callback with that error and setting the global variable
`_error` as the error we just caught. This is to make sure that when the
stream ends we call the callback with the error as well as to not to
over-ride it.
Finally we remove the hard-coded message in the UI and display the error
that gets passed in to it through the props attribute. This is the only
part I'm not super sure on if we really want since it must have been set
there for a reason. If I can get a re-producible test case I can make
sure that it's still passing with this patch.
Fixes#355.
Signed-off-by: Kristján Oddsson <koddsson@gmail.com>
Removing the reload (and the whole `componentDidMount` function since
the reload was the only thing in there) makes sure that the container
view isn't reloaded when the DOM changes and so does not make a request
to the container. Because of this change kitematic will not make a
request to the container when hovering over the preference button.
(I wasn't sure if this was used somewhere for real. If it is, I couldn't
find it).
Fixes#333.
Signed-off-by: Kristján Oddsson <koddsson@gmail.com>
- For now changes in SetupStore are made, to skip steps that do MacOS setup.
- Adding deps.ps1 script for installing all required dependencies on windows.
- Adding reset.ps1 script for removing all dependencies on windows.
- Modifying files to work with windows dependencies
- Fix for duplicate react instances in the code.
- A fix required to load only one instance of React in the application. Without such fix, on windows application loads two instances of React at start time, and crashes.
- Modifying files to support windows paths
- Modifying deps and reset powershell scripts to loose chocolatey dependency. Adding windows VirtualBox installation steps.
- Improved a workaround for adding Users directory to the shared folder in the VM on windows. Added few more fixes for Windows/Mac compatibility.
- Removing unnecessary log from deps.ps1 script,
- Updating Gulpfile to download and copy all the dependencies on application start,
- Cleaning pre and post install scripts from package.json, as they are not realy friendly for different platforms.
- Removing changes from browser.js as they were not necessary or even breaking.
- Cleaning pre and post install scripts from package.json, as they are not really friendly for different platforms.
- Fixing changes in package.json.
- Fixed reset.ps1 file to delete all folders created by the app,
- Fixed metrics.js file to properly use userAgent depending on the OS.
- Uncommented updateBinaries line in SetupStore.
- Adding open as a dependency.
- Fixing the setupStore tests.
- Adding proper directory to PATH for docker and docker-machine binaries.
- Adding support for the docker terminal command. It opens a CMD on windows and sets required env variables for the docker to work. Docker and Docker-Machine should be on the path, as they are set up there on Kitematic startup.
- Added Resources module which provides paths to all files stored in the resources directory,
- Added docker and docker-machine binary paths to Util module, to have a single place for calling those paths,
- Added binaries directory path, to Util module, to have a single place for calling this path,
- Added another exec command, which utilizes "child_process" module, and it's "exec" command, as the "exec" used right now is deprecated,
- Refactored the Installation step in the SetupStore, and connected with that SetupUtil commands to perform copying binaries from node instead of bash commands. That way application is more cross-platform friendly,
- Added new dependencies in form of fs-extra, fs-promise and any-promise, to allow yielding of fs commands in SetupUtil.
- The setup process now works correctly on windows from the beginning to end.
- Fixing broken tests.
- Improving tests.
- Adding elevated permissions to the reset script, as it is required to kill processes and remove VirtualBox.
- Added ability to run reset scripts through gulp,
- Added new npm script for resetting the environment "npm run reset".
- Refactored docker-machine module, to use Resources module for finding the machine command and general code cleaning,
- Added windows keyboard shortcut support.
- Adding the use of Resources module, instead of direct access of files in the resources dir.
- Testing appveyor.
- Testing appveyor + io.js.
- Back to node 0.10.
- Fixing permission issues with appveyor.
- Testing travis.
Signed-off-by: Dominik Deren <dominik.deren@live.com>
- Working on changes required to setup client on windows.
- For now changes in SetupStore are made, to skip steps that do MacOS setup.
- Adding deps.ps1 script for installing all required dependencies on windows.
- Adding reset.ps1 script for removing all dependencies on windows.
Fix for duplicate react instances in the code.
Modifying files to support windows paths
- Removing unnecessary log from deps.ps1 script,
- Updating Gulpfile to download and copy all the dependencies on application start,
- Cleaning pre and post install scripts from package.json, as they are not realy friendly for different platforms.
- Removing changes from browser.js as they were not necessary or even breaking.
- Fixing changes in package.json.
- Uncommented updateBinaries line in SetupStore.
- Adding open as a dependency.
- Adding proper directory to PATH for docker and docker-machine binaries.
- Fixing broken tests.
- Improving tests.
- Adding elevated permissions to the reset script, as it is required to kill processes and remove VirtualBox.
- Added ability to run reset scripts through gulp,
- Added new npm script for resetting the environment "npm run reset".
- Refactored docker-machine module, to use Resources module for finding the machine command and general code cleaning,
- Added windows keyboard shortcut support.
- Adding the use of Resources module, instead of direct access of files in the resources dir.
- Testing appveyor + io.js.
- Back to node 0.10.
- Fixing permission issues with appveyor.
Signed-off-by: Dominik Deren <dominik.deren@live.com>