Skip to content

Instantly share code, notes, and snippets.

View scottsb's full-sized avatar

Scott Buchanan scottsb

View GitHub Profile
@scottsb
scottsb / m2-cache-cheat-sheet.md
Last active February 22, 2024 14:56
Magento 2 Cache Cheat Sheet

Magento 2 Cache Cheat Sheet

This page lists what caches or directories you will need to clear to apply various types of changes. It is consolidated and adapted from the complete official documentation on directories and caches.

💁 If your development environment supports it, you are better off using Vinai's automatic cache cleaner. As of this writing, the primary reason why it might not work is if your code is hosted on a NFS share (common with Vagrant).

@scottsb
scottsb / casesafe.sh
Last active January 16, 2024 08:47 — forked from Hais/workspace.sh
Create and manage a case-sensitive disk-image on macOS (OS X).
#!/bin/bash
# ---------------------------------------------------------
# Customizable Settings
# ---------------------------------------------------------
MOUNT_POINT="${CASE_SAFE_MOUNT_POINT:-${HOME}/casesafe}"
VOLUME_PATH="${CASE_SAFE_VOLUME_PATH:-${HOME}/.casesafe.dmg.sparseimage}"
VOLUME_NAME="${CASE_SAFE_VOLUME_NAME:-casesafe}"
VOLUME_SIZE="${CASE_SAFE_VOLUME_SIZE:-60g}"
@scottsb
scottsb / php-fpm-status-table
Last active June 21, 2023 09:10
PHP-FPM Full Status as Table
#!/usb/bin/env bash
# Update as needed:
# * Status page URL for php-fpm if not at http://127.0.0.1/status
# * Host header of website if required to match correct pool
# Columns (as of PHP 7.1):
# * pid
# * state
# * start time
@scottsb
scottsb / concatenate-jira-comments-to-description.md
Last active December 22, 2021 21:59
Concatenate Jira Comments to Description for Import

Purpose

Reformat Jira ticket export to include comments in the ticket description and to update attachment URLs to include an authorization key.

Background

Jira provides the ability to import from CSV two different ways:

  1. External System Import: A more powerful import accessible only to admins and that is potentially too powerful, auto-creating users and custom fields in a way that may not be desired.
@scottsb
scottsb / resetting-csync2-cluster.md
Last active October 25, 2021 20:28
Guide to Resetting a csync2 Cluster

Guide to Resetting a csync2 Cluster

Introduction

These are possible steps to reset a csync2 cluster that has been seriously fubared. This is an apocalyptic approach and should only be used when more surgical fixes (like correcting an individual conflict) aren't workable.

Use Cases

@scottsb
scottsb / paypal-id-formats.md
Last active June 2, 2020 14:10
PayPal API ID Prefix Formats

PayPal API ID Prefix Formats

PayPal uses various prefixes to distinguish different types of unique IDs in their APIs, but these are not currently documented in a single place. This Gist seeks to bring that information together into a single place. If there is something missing, please reach out through one of the channels on my GitHub profile since GitHub doesn't send notifications on Gist comments.

Formats

@scottsb
scottsb / di.xml
Last active August 3, 2019 14:18
Quick Fix Module for Magento2 Issue #21299 (HEAD request returns 404)
<?xml version="1.0"?>
<config xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:noNamespaceSchemaLocation="urn:magento:framework:ObjectManager/etc/config.xsd">
<type name="Magento\Framework\App\Request\HttpMethodMap">
<arguments>
<argument name="map" xsi:type="array">
<item name="OPTIONS" xsi:type="string">\Magento\Framework\App\Action\HttpOptionsActionInterface</item>
<item name="GET" xsi:type="string">\Magento\Framework\App\Action\HttpGetActionInterface</item>
<item name="HEAD" xsi:type="string">\Magento\Framework\App\Action\HttpGetActionInterface</item>
<item name="POST" xsi:type="string">\Magento\Framework\App\Action\HttpPostActionInterface</item>
<item name="PUT" xsi:type="string">\Magento\Framework\App\Action\HttpPutActionInterface</item>
@scottsb
scottsb / fix-description.md
Last active July 5, 2019 20:20
Patch for WooCommerce Auth.net DPM SHA2 Response Calculation

The WooCommerce Authorize.net DPM plugin (v.1.8.0) has a bug in the SHA2 response calculation, causing the following error to appear to customers when they enter invalid credit card information (as well as an email to the merchant admin email):

An error occurred while trying to report this transaction to the merchant. An e-mail has been sent to the merchant informing them of the error. The following is the result of the attempt to charge your credit card.

As a quick fix, open the file class-wc-authorize-net-relay-response-handler.php and search for this bit of code:

! empty( $data[ $hash_field ] )

And replace with this:

@scottsb
scottsb / fix-diffcase-images.sh
Last active April 19, 2019 10:24
Fix name of images in Magento whose names only vary by case (renaming them both in the filesystem and the database catalog). This is useful if media files need to pass through a case-insensitive filesystem, like a Mac.
#!/bin/bash
# Settings
SUFFIX=alt
MAGERUNCMD=magerun
# Sanity Checks
type $MAGERUNCMD >/dev/null 2>&1 || {
echo "ERROR: This script requires the command '$MAGERUNCMD' to be executable in the current path."
exit
@scottsb
scottsb / component-library-generators.md
Last active December 8, 2017 16:13
Component Library Generators for Existing Site

Component Library Generators for Existing Sites

Goal

Identify a tool for generating a living component/pattern library that can be integrated alongside a pre-existing code base. Ideally should be able to generate static HTML as part of a Grunt/Gulp job.

Finalists