Rename default "Example" directory in pod init - xcode

I am following this tutorial in creating a private pod: https://medium.com/practical-code-labs/how-to-create-private-cocoapods-in-swift-3cc199976a18 . When I run the following command, I can see an "Example" directory:
pod lib create HandyExtensions
"Example" is only useful to me the first time I run the command. I'd like to change it to something more meaningful, like "Workspace". How can I rename this folder to ensure it plays well with Xcode?
(I've tried many things ranging from renaming to cleaning workspaces. However, I always come back to the error of : No such module : when I try to test my private pod. A step by step solution, or even a command would help me resolve this annoyance )

pod lib create is really only intended for initial creation.
pod gen is more useful for building workspaces for testing already existing pods. See https://github.com/square/cocoapods-generate for usage instructions.

Related

kubectl not working on my windows 10 machine

When I try to run any kubectl command including kubectl version, I get a pop-up saying "This app can't run on your PC, To find a version for your PC, check with the software publisher" when this is closed, the terminal shows "access denied"
The weird thing is, when I run the "kubectl version" command in the directory where I have downloaded kubectl.exe, it works fine.
I have even added this path to my PATH variables.
thank you for the answer, #rally
apparently, in my machine, it was an issue of administrative rights during installation. My workplace's IT added the permission and it worked for me.
Adding this answer here so that if anyone else comes across this problem they can try this solution as well.
Not knowing what exactly you downloaded, i would suggest you to delete everying in the folder and follow the instructions for installing kubectl for Windows from here:
https://kubernetes.io/docs/tasks/tools/install-kubectl-windows/
Note: downloading the .exe is not enough. You need a kubeconfig file "config", which contains the configuration to access your cluster.
kubectl looks for this file in a hidden folder under your user profile directory. c:\users<me>.kube.
Just to let you try, i would suggest you to activate Kubernetes in your Docker-Desktop installation. I guess you have this installed. If not install it from the Dockersite. https://www.docker.com/products/docker-desktop/
Activating Kubernetes inside Docker-desktop, will install also kubectl and save the config in the .kube folder.
After the installation finished, in a new terminal:
kubectl get node
You should see the 1 node in the kubernetes-docker-desktop cluster.
Now if you want to access another cluster, you need the kubeconfig-file for that cluster. If you have it, just rename the config in the .kube folder (to not loose it) and put the other config inside.
If the new config file is correct you should be able to access that cluster.
The config file can be structured to hold more than one cluster configuration and you can switch between them using a so called context.
Here you can get the information how to do that, according to your needs:
https://kubernetes.io/docs/tasks/access-application-cluster/configure-access-multiple-clusters/
Hope this can help you, starting with KUbernetes.

Multiple commands produce '/Users/...Debug-iphonesimulator/cocoapods-artifacts-Debug.txt':

Version control woes.
When I pulled my project onto another machine it refused to compile - giving error
Multiple commands produce '/Users/.../Build/Products/Debug-iphonesimulator/cocoapods-artifacts-Debug.txt':
1) That command depends on command in Target '____' (project '____'): script phase “[CP] Prepare Artifacts”
2) That command depends on command in Target '___UITests' (project '_____'): script phase “[CP] Prepare Artifacts”
And it was deeply annoying and frustrating.
So the fix was as follows:
I had used pod update when I should have used pod install (or possibly vice versa. I am trying to be a good citizen recording notes - but I don't want to break my project again to recreate the steps!).
I also reinstalled cocoapods on my backup machine this may or may not have been part of the fix.

Process killed when running npm install during file generation step of production guide (Canvas LMS)

I am trying to set up a canvas lms on an amazon ec2 Ubuntu environment. I've gone so far until the file generation step of the production environment guide. I've been able to successfully follow the steps until this point.
Steps to reproduce:
I was successful in making the asset directories and taking their ownership as directed in this step:
sysadmin#appserver:~$ cd /var/canvas
sysadmin#appserver:/var/canvas$ mkdir -p log tmp/pids public/assets public/stylesheets/compiled
sysadmin#appserver:/var/canvas$ touch Gemfile.lock
sysadmin#appserver:/var/canvas$ sudo chown -R canvasuser config/environment.rb log tmp public/assets \ public/stylesheets/compiled Gemfile.lock config.ru`
After this, I run 'npm install'
It is at this point that after getting some deprecated warnings I get stuck at this line:
canvas-lms#0.0.0 preinstall /home/ubuntu/canvas/script/gem_npm install
running npm install for gems/canvas_i18nliner/package.json
running npm install for gems/selinimum/package.json
Killed [ ..] / extract:lodash: sill gunzTarPerm modified mode [ 'fp/getOr.js', 420, 436 ]'
What I've already tried:
First I thought it was an error with the port 9418/tcp not being open. I opened this port through amazon ec2 security group inbound rules. This did not work. Then I tried opening all the ports 1-65000 to fix this. It still did not work.
Additional notes:
From the looks of it, it does not looks like a port issue because the script is able to fetch data in the previous steps. Also from the progress bar it can be seen that the extract is failing only when the last 2 dots are left as the progress bar is shows like this: [ ..]. I'm guessing this is a .js creation erorr.
The documentation provides a link to fix those issues but the description of the steps to follow are not very elaborate there as I can't understand what exactly i need to do. Can someone please look into this and help me? Any help is much appreciated.
The File Generation section in the production guide says to follow this link to fix .js creation issues. The solution I found in this link was to add the following code to the compile_template function found in lib/handlebars/handlebars.rb file. The directory lib/handlebars does not exist in /lib
def compile_template(source, id, plugin=nil)
require 'execjs'
require 'multi_json'
P.S. I downloaded my installation directly from the git repository so no chance of this being missing for some reason :/

how to remove / disavow a private podspec?

Recently, I found a problem in a public cocoapod, and I was impatient to wait for the fix. Good thing, too, because it took about 4 weeks to get my PR accepted.
So, my solution was to fork the public pod. I'm already using a private repo for some of my company's private pods, so I modified my forked podspec file, and did a pod repo push to my local repo.
In my podfile, I modified the "pod" line like so:
pod 'PublicPod', :git => "https://github.com/MyCompany/ForkedPublicPod.git
Recently, my PR was accepted, so I removed the "git" dependency on the "PublicPod" line, telling Cocoapods to use the "normal" pod, instead of my private pod (or so I thought). However, I'm being told that cocoapods has Found multiple declarations for 'PublicPod'.
So, I don't need my forked pod to be active anymore, but I do have other private pods, so I can't just removed the source line from my Podfile.
I just want to forget about my private pod, and have it just not be seen or available anymore.
When I faced the similar problem. I haven't found any command to do this via pods, so I completed this task manually. I removed my local pod the next way:
Remove folder with all podspecs from my private pod. I think, this is the main step because no podspecs - no pod.
Run pod repo update [repo_name] to stay your local cached repo synced with remote repo.
Since I don't need my current sources for the removed pod, I delete them too.
I use tags for pod versioning, so I remove all tags connected to my pod
Additionally you can clean pod cache (to be ensure, that you really use remote pod) with pod cache clean <pod_name> --all. Be careful, if you miss pod_name, this command will clear all your cache (all pods)!
I suppose, the first two steps are enough. But I wanted to completely remove the private pod.

Golang and NSQ (bitly)

So kind of a noob here but I can't seem to find any examples or help anywhere. I have a working instance of NSQ, can register tasks, consumers, etc. Unfortunately I did not originally set the system up. What I am trying to do is figure out how to activate some of the built in command line tools that NSQ offers ( nsq_to_file, nsq_tail, etc. ). I found documentation on how to fire them but have no idea where to fire them from.
When I try nsq_tail --channel=MyTestChannel --topic=test --lookupd-http-address=127.0.0.1:4161 i get nsq_tail command not found. The only other thing I know is that NSQ is managed by docker in our circumstance. Any help / a shove in the right direction would be awesome. Thanks!
Did some digging and answered my own question. Hopefully this helps someone since the docs dont really exist:
Make sure NSQ is running by checking out the dashboard: localhost:4171
Install the NSQ library (different than nsq-go) go get github.com/bitly/nsq
Install godep, how bitly manages dependencies go get github.com/tools/godep
Go to bitly src directory cd $GOPATH/src/github.com/bitly
Use docker to compile and test the nsq command line tools sudo docker build nsq
You should see about 5 or 6 steps run followed by a schlew of tests and a success message.
Run nsq_tail you should see something along the lines of --topic is required
Clap your hands, you just installed the command line tools for NSQ.
Might also need to install docker if you don't have it, not referenced above but FYI.

Resources