• info@bizmate.biz

Author Archive

GitLab Clone Private Repository with Access Token – Composer

When you are hosting private code, for instance for a reusable component, on Gitlab you will not be able to clone it unless you have access or are authenticated with the GitLab backend and are authorised to the repository.

Access tokens are a great way to allow an alternative way to clone or add your project as a dependency to a parent project. For example you can use tokens as part of your Continuous Integration pipeline to build, test and deploy your project.

If you add a project in your composer.json ( composer is the de facto package manager most used in PHP) , such as

composer.phar require "bizmate/my-private-package:2.*"

You will see something like

Could not fetch https://gitlab.com/api/v4/projects/bizmate%2Fmy-private-package/repository/archive.zip?sha=..., enter your gitlab.com credentials to access private repos
A token will be created and stored in "/home/composer/.composer/auth.json", your password will never be stored
To revoke access to this token you can visit gitlab.com/profile/applications
Username: 
Password: 
Bad credentials.
You can also manually create a personal token at https://gitlab.com/profile/personal_access_tokens
Add it using "composer config --global --auth gitlab-token.gitlab.com <token>"

Using username and password credentials is not a great approach as they are critical information and also because if you have 2FA enabled it might not work.

The only stable solution is to create a Personal Access Token and set it up in the Composer configuration so that composer can build the correct links to clone git repositories from GitLab by adding the right token to the URL.

Inspect your configuration within composer with command

$ composer config --list

#or

$ composer config --global --list

to fetch the global configuration. To set up the right configuration you can run

composer config --global gitlab-token.gitlab.com a______________________a

again the –global option is present to set it up in the system wide configuration of your PC.

Bizmate

phpbrew install php 7.2 with almost everything

$ phpbrew install 7.2 +everything -dtrace -pgsql -tidy

Bizmate

AWS SES Credentials Generation

Simple Email Service (SES) is one of the great AWS services for email

As per original instructions, credentials for this service can be generated from the console or you could generate it from your user credentials, AWS Secret Access Key.

Bizmate

Getting started with PHP and RabbitMQ queues using Docker in style

RabbitMQ is a great option for the implementation of an AMQP (Advanced Message Queuing Protocol) queuing system.

Why would you need a queuing system? So that you can offload heavy tasks to be processed in a separate process asynchronously and avoid blocking your client, on your website for instance.

Bizmate

How to perform multiple Guzzle requests at the same time?

Guzzle is a great wrapper to run Curl requests from your PHP applications

As part of my development requirements for MyReviews.link, I had to implement a fast concurrent way to perform http requests to several servers.

Bizmate

Mount a AWS S3 bucket on a VM running a FTP service, and spin it also on AWS EC2

This is a drive through the requirement to install an AWS S3 Bucket on a Virtual Machine, on your PC and provisioned by VirtualBox, with an FTP service that can make use of the AWS S3 Bucket for persistent distributed storage. The reason to have a S3 bucket is to allow the use of a single persistent storage for several services (for instance multiple FTP servers) running for different clients and exposed by a dedicated virtual machine.

Bizmate

Enable a WIFI POS from your Windows computer

Please note the below instructions are for Windows only

You might want to enable access to your Windows laptop or to the internet through a Wifi network.

Bizmate

Agile Coaching & Delivery

Time to market and how effective your business is in delivering quality IT solutions could be a crucial differentiator against competition.

Development methodologies, Waterfall vs Agile

Agile Versus Waterfall development methodologies

Bizmate

update git on ubuntu server

Are you stuck with an old version of git on your ubuntu server? Please continue reading below.

Bizmate

Mysql – enable table logging in general_log

Sometimes in DB used by different applications you might like to monitor what queries are executed and see them directly on your mysql client, like SqlYog or Sequel Pro.

Bizmate