I was looking for a setup to test my OAuth2 Knowledge and I found excellent videos and articles in internet. Specifically I followed this one:
Now, trying to create my own test I went to my Google Cloud Platform Console and create my Oauth2 Client Id and Consent Screen. Please, note that GCP offers different options to add a Client Id. I selected the one for Web Application Client.
OAuth2 needs consent screen
Now, lets test with OAuth2 debug tool: State is not in screenshot but I set it to “anti-forgery”. See success screen.
Then you clone SuperTux repository and open the project with Visual Studio Code.
Keep in mind that you need to use –recurse option or submodule option. Look in SuperTux wiki to clone correctly repoi.
At this part the video skips a lot of explanation.
Julia explains how to set the active key to Visual Studio Tools 2019 – amd64
She also explains how to setup build variant to Cmake: Debug Ready
At this point the build config is done but if you try to follow this sequence you will see this kind of error:
This error means that all third party libraries used by SuperTux are not installed in your system. In Julia’s case, she already installed those dependencies with vcpkg. So at this point is important to mention that we need to install vcpkg!
At this point, setup cmake configuration to point cmake to vcpkg. Open cmake extension settings from Visual Studio Code and setup settings.json. Notice that path is the same that the one displayed by vcpkg integrate install.
vcpkg will install by default 32 bits packages. By using the –triplet parameter you will install 64 bits version of packages instead of 32 bits.
Every time you install a package, click on the build gear button to generate cmake build file. You will get new error mentioning missing library/package. Once you generate successfully the build the tool will try to build SuperTux. Then you will get error that .lib files are missing
Those libs are provided by same project. Build them manually one by one. Select the target:
Then build every single target. lib files will be built.
Finally select SuperTux2 target. This will build exe file.
In my case, when trying to run or debug nothing happened. I launched manually exe file generated in build folder an error message showed that 2 dlls were not found:
squirrel.dll and sqstdlib.dll
Copy 2 dlls into build debug folder.
Finally, I wanted to try vcpkg.json manifest file support. I only found that feature included in latest roadmap:
I downloaded latest version 0.6.2 from git and then I followed my own steps. I got a different error when running cmake configure. Specifically with physfs_lib package
This time was more difficult to troubleshoot this issue. At the end I commented this line (940) from CMakeLists.txt:
This was not elegant but at the end allowed me to run cmake configure.
After that, the BUILD ALL option worked correctly and I did not have to create every submodule one by one.
The guide does not mention that you can install CDK in Fedora as it does specifically mention that supports installation in RHEL, macOS and Windows.
For this you will need to meet the following prerequisites:
KVM with libvirtd service or
VirtualBox (In my case, libvirtd was broken so I tested with Oracle VirtualBox 6.1.4)
RedHat Developer Subscription
The first step is to download minishift version for OpenShift: cdk-3.11.0-1-minishift-linux-amd64
Rename this file to minishift and then run:
Then with the start option.
minishift start --memory 12G
Then you will be able to log into cluster
The catalog looks impressive to me.
Please, note that:
CDK installs a single node OpenShift cluster. The version deployed is 3.11.157, this versions uses Kubernetes 1.11.
The latest version for Openshift is 4.3 and the latest version for Kubernetes is 1.17. (As March 2020). Openshift 4.3, however, uses Kubernetes 1.16.Apparently there is no CDK for OpenShift 4.x. It looks to me that the way to install a Development Environment is by using Red Hat Code Ready Containers.
I want to describe the challenges one have to face when learning kubernetes. It turns out that is not that easy to describe what kubernetes is.
After digging a little bit the internet, I wanted to try kubernetes. The number of options available is outrageous. By chance, I opted to use Red Hat Open Container Kit. I learned this is a streamlined version of OpenShift which is the enterprise version of kubernetes from redhat.
Red Hat Open Container also is a streamlined version for minishift.
minishift will create a VM with kubernetes and docker setup for you. You have two options to setup minishift with virtualization. Either you use VirtualBox driver or kvm/libvirt. I wanted to use kvm/libvirt in my laptop with Fedora 31. I realized libvirtd is broken in my fedora 31 setup. So I was forced to use Virtual Box driver.
I also noticed this version of CDK only supports openshift 3 while RH is already in Openshift v4.
What I found confusing is the use of docker in CDK. While RedHat is pushing the use of cri-o and podman instead of docker. Add to the confusion the okd project.
Anyway I think is a little bit oudated the use of CDK, but let’s give it a try as it looks as a good start to learn about kubernetes.
I found this link which helped me to understand better: